使用正则表达式JS

时间:2016-06-22 03:59:40

标签: javascript

我想验证输入的密码是否包含字母(没有最小值或最大值)和至少1个数字。到目前为止,这是我的验证。

function validate(){

var password = $("#password").val(); //user enters password in text field

if (/^[0-9]{1,}[A-Za-z]{1,}/.test(password)){ //this regex does not quite do what i want
    alert("Password is correct");
}
else if (password == null || password.length == 0){
    alert("Enter password");
}else{
    alert("Wrong password");
  }
 }
}

2 个答案:

答案 0 :(得分:3)

字母数字字符的正则表达式:

/^([a-zA-Z0-9]+)$/

正则表达式至少有一个数字:

/\d/

正则表达式至少有一个字母:

/[A-Z]/i

您可以将上述内容组合成if语句,如下所示:

if (/^([a-zA-Z0-9]+)$/.test(password) && /\d/.test(password) &&
    /[A-Z]/i.test(password)) {
    alert("Password is correct");
}

答案 1 :(得分:1)

尝试/(?=.*[a-z])(?=.*\d)/i

(在此播放:https://regex101.com/r/qJ7vS9/1