密码验证器javascript正则表达式

Password validator javascript regular expression

本文关键字:正则表达式 javascript 验证 密码      更新时间:2023-09-26

请帮我处理正则表达式。我有使用正则表达式验证密码的方法:

/^(?=.*[0-9])(?=.*[!@#$%^&*])[a-zA-Z0-9!@#$%^&*]{6,12}$/;

我需要添加这个条件,密码必须包含两个大写字母。

谢谢帮助!

您可以在正则表达式中添加另一个前瞻:

/^(?=.*[0-9])(?=(?:[^A-Z]*[A-Z]){2})(?=.*[!@#$%^&*])[a-zA-Z0-9!@#$%^&*]{6,12}$/;

这是一种非常难看的检查密码语法的方法。如果将检查拆分为多个步骤,代码将更容易阅读和调试。

例如:

/* Check for at least 2 capital letters */
if (!(/[A-Z][^A-Z]*[A-Z]/.test(password))) {
  alert("Your password must contain at least two capital letters");
  return false;
}
/* Check for at least 2 lower case letters */
if (!(/[a-z][^a-z]*[a-z]/.test(password))) {
  alert("Your password must contain at least two lower case letters");
  return false;
}
/* Check for at least one digit */
if (!(/[0-9]/.test(password))) {
  alert("Your password must contain at least one digit");
  return false;
}
... etc ...