需要一个包含 1 个大写字母、长度为 8-25 个字符且包含 1 个特殊字符(不包括 #
和 &
)的正则表达式。这是我所拥有的:
/^(?=.*[A-Z])(?=.*[^0-9a-zA-Z]).{8,25}$/
我需要添加什么才能使正则表达式不接受包含 #
或 &
的字符串?
最佳答案
简单地说:
/^(?=.*[A-Z])(?=.*[^0-9a-zA-Z])[^#&]{8,25}$/
说明:
(?=.*[A-Z])
表示只有0-n个字符且后跟大写字母才匹配成功。(?=.*[^0-9a-zA-Z])
表示只有0-n个字符,后面跟一个不是的字符才匹配成功0-9、a-z 或 A-Z。[^#&]{8,25}
表示主匹配必须由8-25个字符组成,其中不能是#
或&
关于javascript - 不能包含 # 或 & 的字符串的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23837658/