密码的正则表达式必须包含 8 个字符,2 个小写或大写字母和 1 个特殊字符 '*' 5 位数字
Posted
技术标签:
【中文标题】密码的正则表达式必须包含 8 个字符,2 个小写或大写字母和 1 个特殊字符 \'*\' 5 位数字【英文标题】:Regex for Password must contain 8 characters, 2 letter both lower or uppercase letters and one special character ' * ' 5 digit number密码的正则表达式必须包含 8 个字符,2 个小写或大写字母和 1 个特殊字符 '*' 5 位数字 【发布时间】:2015-05-26 09:40:10 【问题描述】:我想为密码创建一个表达式,如下所示:
密码的正则表达式必须包含 8 个字符,以 2 个小写或大写字母开头,包含一个特殊字符 *
和一个 5 位数字。
例如:az*12345
*
;
以 5 位数字结尾。
我已经尝试过这种模式:
(?=(.*[^a-zA-Z])2)(?=.*[*]1)(?=(.*\d)5).8$
但是,它产生的结果与上面的正则表达式几乎相同。它以任何字符开头,但我想要上面提到的确切模式。我知道我很接近它。请建议我该怎么做。
【问题讨论】:
regex101.com/r/fH8jW4/2? 特殊字符必须是星号 (*) 吗?那么^[a-zA-Z]2\*\d5$
还不够吗?
如果您不希望它以任何字符开头,请不要让它以.*
开头。这意味着任何字符零次或多次。
感谢保罗.. 太棒了.. 它有效..
谢谢 nick.. 这就是解决方案
【参考方案1】:
如果您只想匹配 [2-letters]+[*]+[5-digits]
模式,这就是您要查找的内容:
^[a-zA-Z]2\*[0-9]5$
.
【讨论】:
以上是关于密码的正则表达式必须包含 8 个字符,2 个小写或大写字母和 1 个特殊字符 '*' 5 位数字的主要内容,如果未能解决你的问题,请参考以下文章
密码强度正则表达式 – 必须包含大写字母,小写字母和数字,至少8个字符等