正则表达式和 jquery 验证。否定表达式

Regex and jquery validate. Negate expression

我正在研究 jquery 验证插件的添加方法,该插件必须检测是否输入了 3 个或更多连续的相同字符,并提示消息。 为此,我需要否定正则表达式。这是我的方法:

$.validator.addMethod("pwcheckconsecchars", function (value) {
    return /(.)/.test(value) // does not contain 3 consecutive identical chars
}, "The password must not contain 3 consecutive identical characters");

上面的代码显示了没有连续输入相同字符时的错误消息,所以我需要否定表达式 /(.)/ 以便它只在错误发生时出现。

这个 jsfiddle 显示了我目前的代码:http://jsfiddle.net/jj50u5nd/3/

谢谢

正如 Pointy 在评论中所述,使用 ! 字符来否定或反转结果。

$.validator.addMethod("pwcheckconsecchars", function (value) {
    return !/(.)/.test(value); // does not contain 3 consecutive identical chars
}, "The password must not contain 3 consecutive identical characters");

在下面的演示中输入 "AAAa1",它满足足够多的其他规则来证明此特定方法有效。

演示:http://jsfiddle.net/jj50u5nd/6/