密码正则表达式验证始终错误

时间:2016-06-23 13:13:38

标签: jquery regex

我有以下自定义jQuery验证正则表达式,应该确保密码长度至少为8个字符,有一个数字且不包含空格:

$.validator.addMethod("password", function(value, element) {
    return this.optional(element) || /\A(?=.*\d)\S{8,}$/i.test(value);
}, "Password must have at least one digit, be 8 characters in length and not contain spaces.");

然而无论我在框中输入什么,它总是调用错误。正则表达式是不正确的?

1 个答案:

答案 0 :(得分:2)

在JS中\A并不意味着字符串的开头,而是使用^

/^(?=.*\d)\S{8,}$/i

请参阅MDN boundaries doc