创建密码正则表达式(javascript)

时间:2015-03-02 19:18:20

标签: javascript regex

我正在尝试创建一个密码正则表达式:

  • 长度至少为8个字符
  • 必须以大写字母开头,后跟数字
  • 拥有其中一个特殊字符(#@ *)
  • 在密码末尾包含3个数字

这是我到目前为止所尝试的:

/^([A-Z][\d])([#@*]{1})([A-Za-z0-9]+)([\d]{3})$/

到目前为止,问题在于它只允许特殊字符出现在数字之后。

例如:它允许 A4#Fgf344 但不允许 A4Fg#f344

2 个答案:

答案 0 :(得分:0)

^(?=[^#@*]*[#@*][^#@*]*$)([A-Z][\d])([A-Za-z0-9#@*]+)([\d]{3})$

试试这个。这应该这样做。参见演示。

https://regex101.com/r/wU7sQ0/50

答案 1 :(得分:0)

您可以使用此正则表达式:

/^[A-Z]\d(?=.*?[#@*]).{3,}\d{3}$/gm

RegEx Demo