正则表达式密码验证器

时间:2010-09-28 06:10:49

标签: asp.net

我很难为RegularExpressionValidator控件创建一个正确的正则表达式,允许检查以下密码: - 大于七个字符。 - 至少包含一位数字。 - 包含至少一个特殊(非字母数字)字符。

似乎也没有找到任何结果。任何帮助,将不胜感激!谢谢!

3 个答案:

答案 0 :(得分:10)

也许您会发现this article有帮助。您可以尝试以下表达式

^.*(?=.{8,})(?=.*[\d])(?=.*[\W]).*$

和细分:

  • (?=.{8,}) - 至少包含8个字符
  • (?=.*[\d]) - 至少包含一位数字
  • (?=.*[\W]) - 至少包含一个特殊字符

答案 1 :(得分:0)

http://msdn.microsoft.com/en-us/library/ms972966.aspx

搜索这些示例中必需的“查找处理”。您还可以使用.{4,8}测试一系列值,如Microsoft的示例所示:

^(?=.*\d).{4,8}$

答案 2 :(得分:0)

试试这个

((?=.*\d)(?=.*[a-z])(?=.*[\W]).{6,20})

上述正则表达式的描述:

(           # Start of group
  (?=.*\d)      #   must contains one digit from 0-9
  (?=.*[a-z])       #   must contains one lowercase characters
  (?=.*[\W])        #   must contains at least one special character
              .     #     match anything with previous condition checking
                {7,20}  #        length at least 7 characters and maximum of 20 
)           # End of group

“/ W”会增加可用于密码和坑的字符范围,可以更安全。