【发布时间】:2021-06-16 05:54:52
【问题描述】:
我一直在尝试获取一个允许我匹配括号中的数字的正则表达式,例如:
^([^02-9])?(\s)?((\(?)[0-9]{3}(\3\)?))(\s|\-)?[0-9]{3}(\s|\-)?[0-9]{4}$
这是我尝试使用的表达式,但是当只有一个括号时它也有效,这对我不起作用。有什么办法可以做到吗?
我的表达式应该适用于存在“(123)”且仅存在“123”的情况,但不适用于“(123”或“123)”
【问题讨论】:
-
反向引用
\3应该指的是什么?在此之前您只有 2 个捕获组。 -
我之前没有上传完整的正则表达式,抱歉,这里是:
^([^02-9])?(\s)?((\(?)[0-9]{3}(\3\)?))(\s|\-)?[0-9]{3}(\s|\-)?[0-9]{4}$ -
你能澄清一下
[^02-9]应该匹配什么吗?
标签: javascript regex numbers match parentheses