【发布时间】:2019-10-14 10:38:25
【问题描述】:
我对 RegEx 还很陌生,在让我的 RegEx 做我想做的事情时遇到了一些问题。我正在尝试创建一个正则表达式,以防止除单引号 (')、破折号 (-) 和句点 (.) 之外的任何特殊字符。 RegEx 需要允许空格和空字符串。
我现在拥有的是:
^[a-zA-Z0-9-.]*$
我需要添加什么才能使其正常工作,例如“Kevin O'Leary”这个名字?
我尝试通过添加 \s 来允许空格,但它破坏了我的 RegEx 的其他部分。
^[a-zA-Z0-9-.]*$
预期:应该允许像 Kevin O'Leary 这样的名字 实际:不允许像 Kevin O'Leary 这样的名字
【问题讨论】:
-
确保将连字符放在
[ ]中的第一个或最后一个,否则它具有“范围”含义。不要忘记列出报价。
标签: javascript regex string regex-greedy