如何使用以下条件验证密码?

Joh*_*ohn 0 javascript

密码应包含

  1. 至少有一个大写字母
  2. 至少一个小写字母
  3. 至少一位数
  4. 至少有一个特殊符号
  5. 应该超过4个字符

我试过了 - ^(?=.*\d)(?=.*[a-zA-Z])[a-zA-Z0-9!@#$%&*]{6,20}$

小智 6

你不需要一些大的怪物单个正则表达式,这可能涉及诸如前瞻之类的奥秘,并且在添加新条件时难以维持.所有你需要的是

function validatePassword(pw) {

    return /[A-Z]/       .test(pw) &&
           /[a-z]/       .test(pw) &&
           /[0-9]/       .test(pw) &&
           /[^A-Za-z0-9]/.test(pw) &&
           pw.length > 4;

}
Run Code Online (Sandbox Code Playgroud)

  • +1 对于这样一个简单、易读、显而易见、易于维护的解决方案,即使对于正则表达式初学者也是如此。 (2认同)