【问题标题】:Continuous numbers of 3 or less - RegEx3 或更少的连续数字 - 正则表达式
【发布时间】:2015-09-25 15:58:50
【问题描述】:

我正在制定密码复杂性要求。一项要求是不让用户在密码中输入 3 个连续数字。什么是正则表达式?

例如

Allowed: Stack254!
Allowed: Stack254!36@
Disallowed: Stack8763^

提前谢谢你。

【问题讨论】:

    标签: regex passwords


    【解决方案1】:

    使用否定的前瞻断言。

    ^(?!.*?\d{4}).+$
    

    这将不允许包含至少 4 个连续数字的字符串。

    DEMO

    【讨论】:

    • 谢谢@AvinashRaj。我有这个正则表达式。如何在此表达式中添加规则? /^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[!,@,#,$,%,^,& ,*,?,_,~,-,(,),+,?])([a-zA-Z0-9-!,@,#,$,%,^,&,*,?,_, ~,-,(,),+,?]{7,})$/
    • 这里/^(?=.*[0-9])(?!.*?\d{4})(?=.*[a-z])(?=.*[A-Z])(?=.*[!,@,#,$,%,^,&,,?,_,~,-,(,),+,?])([a-zA‌​-Z0-9-!,@,#,$,%,^,&,,?,_,~,-,(,),+,?]{7,})$/
    • 哦,你不需要用逗号分隔特殊字符.. (?=.*[!@#$%^& 可以完成这项工作..
    • 谢谢阿维纳什。非常感谢。
    • 您好 Avinash,我有一个密码表,希望该表查找任何 3+ 个连续数字?我的代码在这里。 if(val.length > 7 && val.match(/[a-z]/) && val.match(/[A-Z]/) && val.match(/?!\d{4}/) && val.match(/ .[!@#$%^&*?_~-()]/)) 级别 = 4;
    猜你喜欢
    • 2017-03-12
    • 1970-01-01
    • 2012-02-11
    • 1970-01-01
    • 2014-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多