正则表达式以匹配列表中的字符,除非存在另一个列表的字符



我正在尝试构建一个正则表达式来验证应用程序中的密码。

这是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:    /                   <= [^/]

相关内容

  • 没有找到相关文章

最新更新