【发布时间】:2016-05-03 11:27:53
【问题描述】:
我的要求是强制执行一个密码策略,其中包含一个规则,即不允许使用“pass1234”、“abc12”、“12tab”等。我目前的正则表达式是:
if(!Regex.IsMatch(password,
@"^(?!(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)|9(?=0))\d{1,}|(?:0(?=9)|1(?=0)|2(?=1)|3(?=2)|4(?=3)|5(?=4)|6(?=5)|7(?=6)|8(?=7)|9(?=8))\d{1,})[a-zA-Z\d]+$")))
但上面的正则表达式匹配以数字开头的字符串,即“12abc”、“12pass”,但不匹配字符串之间包含数字的字符串,如“ab12pass”、“pass1234”等。
【问题讨论】:
标签: c# regex asp.net-mvc