如何实现密码正则表达式?

Man*_*rma 3 c# regex asp.net password-protection c#-4.0

我希望在我的项目中使用正则表达式模式进行验证.

以下是正则表达式的描述:

  1. 长度必须至少为8个字符.

  2. 必须包含至少1个大写字符.

  3. 必须包含至少1个小写字符.

  4. 必须至少包含1个数字.

  5. 可能包含以下字符:

"<> $〜'`!@#%^&*() - + {} [] =:,.?/ | \

  1. 不得使用重复字符.(aa,11等)

  2. 不得使用超过3个连续字符.(abcd,wxyz,1234等)

anu*_*ava 10

你可以尝试这个正则表达式:

^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,}$
Run Code Online (Sandbox Code Playgroud)

PS:它符合所有条件,我没有包括section e.你写的字符,May contain而dot会允许所有这些.

更新:根据编辑的问题:使用此正则表达式来满足条件(a) - (f)

^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?:(?!.*?(.)\1).){8,}$
Run Code Online (Sandbox Code Playgroud)

我强烈建议不要使用正则表达式来满足条件,(g)因为它将是一个非常长的正则表达式.

  • 那很快.我甚至没有读完这个问题. (3认同)