我正在尝试学习JavaScript正则表达式,但是遇到了问题。
我正在尝试使用以下规则进行验证。
仅允许:
Numbers 0-9
(
)
+
-
(space)
我想出了下面的正则表达式来解决这个问题:
/[0-9\)\(\+\- ]+/i
以下匹配项但不应该执行,因为它包含@符号:
+0@122 0012
我正在使用以下内容进行测试:(返回true)
/[0-9\)\(\+\- ]+/i.test("+0@122 0012")
谢谢。
您的正则表达式与“ @”字符不匹配,但不必使.test()
调用返回true
。字符串中的某处必须有一个匹配项。
如果要坚持整个字符串匹配,则必须使用^
和$
锚。
/^[0-9)(+ -]+$/i.test("+0@122 0012")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句