C# 用于密码验证的正则表达式
我想验证密码。以下是我的要求 最小密码长度:8C# 用于密码验证的正则表达式,c#,regex,c#-4.0,c#-2.0,C#,Regex,C# 4.0,C# 2.0,我想验证密码。以下是我的要求 最小密码长度:8 最小小写字符数:1 最小大写字符数:1 最小数字字符数:1 如何为此编写正则表达式?我同意@Russell的观点,函数是密码验证的更好选择。很难想象一个正则表达式处理所有这些案件。我想你必须依次检查每一个 正则表达式分别为: {8}至少匹配8个字符 [a-z]匹配单个小写字符 [A-Z]匹配单个大写字符 [0-9]匹配一个数字 话虽如此,在让服务器进行深入验证之前,这些仅对客户端检查有用。您可以使用以下正则表达式: ^(?=.*[a-z])(?
最小小写字符数:1
最小大写字符数:1
最小数字字符数:1
如何为此编写正则表达式?我同意@Russell的观点,函数是密码验证的更好选择。很难想象一个正则表达式处理所有这些案件。我想你必须依次检查每一个 正则表达式分别为:
至少匹配8个字符{8}
匹配单个小写字符[a-z]
匹配单个大写字符[A-Z]
匹配一个数字[0-9]
话虽如此,在让服务器进行深入验证之前,这些仅对客户端检查有用。您可以使用以下正则表达式:
^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).{8,}$
请根据您的要求查找以下正则表达式:
(?=^.{8}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$
我的建议是使用函数ValidatePassword。您可能需要对此进行更新,以包括(例如)密码不能包含用户名。只是一个想法。:)正则表达式并不是完成这项工作的最佳工具。@Jacob:通常,当一个人使用某种只允许正则表达式进行验证的框架时,就会出现这样的请求。我认为一些常见的客户端语言不支持
?=
(零宽度正向前瞻),但经过一些研究,我很高兴看到我错了。这是要使用的正则表达式。