校验密码:密码须从字母大小写字母数字字符中 4 选 3,同时密码最低6位

85 阅读1分钟

密码须从字母大小写字母数字字符中 4 选 3,同时密码最低6位

function validatePassword(password) {
  var count = 0;
    if (/[A-Z]/.test(password)) { // 大写字母
      count++;
    }
    if (/[a-z]/.test(password)) { // 小写字母
      count++;
    }
    if (/\d/.test(password)) { // 数字
      count++;
    }
    if (/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/.test(password)) { // 特殊字符
      count++;
    }

  return count >= 3 && password.length >= 6;
}

密码得满足大小写字母数字字符,同时密码最低6位

解释:

  • ^:表示匹配字符串的开头
  • (?=.*[a-z]):表示密码中必须包含至少一个小写字母
  • (?=.*[A-Z]):表示密码中必须包含至少一个大写字母
  • (?=.*\d):表示密码中必须包含至少一个数字
  • (?=.*[!@#$%^&*()_+-=[]{};':"\|,.<>/?]):表示密码中必须包含至少一个特殊字符
  • .{6,}:表示密码长度必须至少为6位
  • $:表示匹配字符串的结尾
function validatePassword(password) { 
    var regex = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]).{6,}$/; 
    return regex.test(password); 
}

validatePassword 函数将接收一个密码作为参数,并使用正则表达式进行验证。如果密码符合要求,则返回 true,否则返回 false