我有以下密码验证条件。
密码长度必须至少为八(8)个字符。 密码必须包含字母和数字字符。 密码不能包含重复字符(例如AA,aa,00,11等)。
我尝试使用以下正则表达式,但缺少重复字符。任何建议
var passw = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8}$/;
答案 0 :(得分:2)
展望你的朋友:
^(?=.*\d)(?=.*[a-zA-Z])(?!.*(.)\1).{8,}
答案 1 :(得分:1)
匹配重复字符的正则表达式是/(.)\1/
我只是将其作为两步验证,不需要将其转换为一个正则表达式
正如评论中所指出的,这只是降低了密码熵,从而降低了安全性。
答案 2 :(得分:1)
怎么样
(?>([a-zA-Z])(?!\1)){8,}
答案 3 :(得分:1)
谢谢..答案^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*(.)\1).{8}$