我需要正则表达式 -
要求 -
1)必须使用一个字母
2)必须提供一个号码
并且允许一些特殊字符不是强制性的。
特殊字符 - [-!$^&*()_|~=`{}[]:/<>?,.@#]
我试过了
/((^\S*[0-9]+\S*[a-z]+\S*)|(^\S*[a-z]+\S*[0-9]+\S*))+$/i
但是如何仅使用给定的特殊字符来限制它。
答案 0 :(得分:1)
使用前瞻:
/^(?=.*\d)(?=.*[a-zA-Z]+)(?=.*[-!$^&*()_|~=`{}\[\]:/<>?,.@#]+)[-\w!$^&*()|~=`{}\[\]:/<>?,.@#]+$/
如果特殊字符不是强制性的:
/^(?=.*\d)(?=.*[a-zA-Z]+)[-\w!$^&*()|~=`{}\[\]:/<>?,.@#]+$/