正则表达式为字母数字和一些特殊字符

时间:2015-06-03 07:15:32

标签: javascript regex

我需要正则表达式 -

要求 -

1)必须使用一个字母

2)必须提供一个号码

并且允许一些特殊字符不是强制性的。

特殊字符 - [-!$^&*()_|~=`{}[]:/<>?,.@#]

我试过了

/((^\S*[0-9]+\S*[a-z]+\S*)|(^\S*[a-z]+\S*[0-9]+\S*))+$/i

但是如何仅使用给定的特殊字符来限制它。

1 个答案:

答案 0 :(得分:1)

使用前瞻:

/^(?=.*\d)(?=.*[a-zA-Z]+)(?=.*[-!$^&*()_|~=`{}\[\]:/<>?,.@#]+)[-\w!$^&*()|~=`{}\[\]:/<>?,.@#]+$/

如果特殊字符不是强制性的:

/^(?=.*\d)(?=.*[a-zA-Z]+)[-\w!$^&*()|~=`{}\[\]:/<>?,.@#]+$/