【问题标题】:ASP.NET default regular expression for users' passwords用户密码的 ASP.NET 默认正则表达式
【发布时间】:2012-03-29 17:15:28
【问题描述】:

asp.net 创建用户向导使用的默认正则表达式是什么?

根据MSDN documentation,应该是这样的:

正则表达式@\"(?:.{7,})(?=(.*\d){1,})(?=(.*\W){1,})

验证信息:您的密码长度必须为 7 个字符,并且至少包含一个数字和一个特殊字符。

但是,它不起作用,因为它不接受 3edc£edc 之类的内容,而在使用默认的创建用户向导时实际上是可以接受的。

知道如何获得这个正则表达式吗?

【问题讨论】:

  • 你可以根据你的要求在这个URL上搜索一个正则表达式:regexlib.com/Search.aspx?k=password
  • @GauravAgrawal 虽然我很欣赏你的回答,但这不是我想要的。我的问题非常具体:“asp.net 创建用户向导使用的默认正则表达式是什么?”。如您所见,我无法通过您提供的链接找到它。问候,

标签: asp.net regex passwords createuserwizard


【解决方案1】:

错误出现在(?:.{7,})(?=(.*\d){1,})(?=(.*\W){1,}) 中的?: 中,即“消耗”了前七个字符或更多字符。应该是?= 或者您可以颠倒顺序:(?=(.*\d){1,})(?=(.*\W){1,})(?:.{7,})

【讨论】:

    【解决方案2】:

    只需更改顺序

    ^(?=(.*\d))(?=(.*\W)).{7,}
    

    我还删除了 {1,} 并将其锚定到字符串的开头,您不需要在最后一部分周围设置一个组

    here on Regexr

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-16
      • 2015-06-11
      • 2014-04-09
      • 1970-01-01
      • 2010-10-20
      • 2011-12-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多