3

我想在我的项目中使用正则表达式模式进行验证。

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

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

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

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

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

  5. 可能包含以下字符:

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

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

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

4

1 回答 1

10

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

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

PS:它满足所有条件,我没有包括section e.你写的字符May contain,点将允许所有这些。

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

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

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

于 2013-10-31T11:26:36.363 回答