[英]RegEx to match characters from list except if characters another list are present
我正在尝试构建一个正则表达式来验证我的应用程序中的密码。
这是 PCRE (php)。
到目前为止,我的正则表达式看起来像这样
/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\$%\^&\*\(\)_\+\-\=\[\]\{\}\|'])(?=.*[^\\\/])(?=.{8,20})/
我的标准如下
minimum length: 8
maximum length: 20
require special character: true
require uppercase: true
require lowercase: true
require number: true
special character set: !@#$%^&*()_+-=[]{}|'
excluded character set: \/
除了排除的字符集外,一切正常。 这个想法是密码不能包含该列表中指定的任何字符。
谢谢您的帮助
利用
/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*()_\-+=[\]{}|'])[^\/]{8,20}$/
见证明
选择:
/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*()_\-+=[\]{}|'])[A-Za-z0-9!@#$%^&*()_+\-=[\]{}|']{8,20}$/
查看另一个证明
minimum length: 8 <= {8,20}
maximum length: 20 <= {8,20}
require special character: true <= (?=.*[!@#$%^&*()_\-+=[\]{}|'])
require uppercase: true <= (?=.*[A-Z])
require lowercase: true <= (?=.*[a-z])
require number: true <= (?=.*[0-9])
special character set: !@#$%^&*()_+-=[]{}|' <= [^\/]
excluded character set: \/ <= [^\/]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.