简体   繁体   中英

Password validator javascript regular expression

Pls help me with regular expression. I have method to validate password using regex:

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

I need to add to this condition that password has to contain 2 capital letters.

Thx for help!

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

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

This is a really ugly way of checking password syntax. Your code would be much easier to read and debug if you split your checks into multiple steps.

For example:

/* 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 ...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM