密码验证正则表达式

时间:2012-08-14 16:02:12

标签: regex passwords

我需要一个密码的正则表达式来满足以下要求:

  • 长度必须至少为6个字符
  • 必须有1个数字字符
  • 第一个和最后一个字符必须是字母字符
  • 没有特殊字符

我发现了一些接近这个的表达式,但没有一个符合我的要求。 我们非常感谢您提供的任何帮助。

我已经尝试过了,但它并不适合这个法案:

^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).*$

2 个答案:

答案 0 :(得分:1)

  • 断言字符串包含6个或更多字符:

    (?=.{6,})

  • 断言字符串至少包含1个数字字符:

    (?=.*\d)

  • 在第一个和最后一个位置匹配字母字符:

    ^[A-Za-z].*[A-Za-z]$

结合以上所有内容,得出以下最终表达式:

(?=.{6,})(?=.*\d)[A-Za-z][A-Za-z0-9]*[A-Za-z]

答案 1 :(得分:0)

尝试这样的事情

(?=.*\d)^[A-Za-z][0-9A-Za-z]{4,}[A-Za-z]$

或者如果你只想要一个数字就是这个

(?=[^\d]*\d[^\d]*$)^[A-Za-z][0-9A-Za-z]{4,}[A-Za-z]$