【发布时间】:2018-06-04 23:22:32
【问题描述】:
在使用正则表达式时,我发现了一个问题。任何人都可以为以下情况给出适当的理由
场景一
var regExp=/^[a-zA-Z0-9!-@#$^_:,. ]$/;
regExp.test('<')// True
场景 2
var regExp=/^[a-zA-Z0-9-!@#$^_:,. ]$/;
regExp.test('<')// false
正则表达式中感叹号位置发生变化。
【问题讨论】:
-
!-@是一个范围字符,其中包括<。在第二个例子中,-的位置意味着它只是一个-。请注意,您可以使用 regex101.com 之类的东西来测试您的表达式并了解它们匹配的内容。 -
你能简单介绍一下吗......
-
是的,你是对的。措辞不好。我应该说它不会像你期望的那样工作。您的评论更好地涵盖了它。
-
密切相关:stackoverflow.com/questions/5484084/… 不确定是否值得欺骗......
标签: javascript jquery regex