【发布时间】:2015-08-07 16:28:02
【问题描述】:
我需要一个只匹配长度为 7 的数字的正则表达式(它们可以有前导零)。我使用了以下超级简单的正则表达式:\b[0-9]{7}\b。但是,此正则表达式也匹配例如中的数字。 5254-6408499 和 (0241)4013999(见 https://regex101.com/r/zF5hV7/1)。
如何防止它们被匹配?我只希望长度为 7 的数字具有前导和/或尾随空格。
【问题讨论】:
-
您可能想为此使用否定的环顾四周。
-
谢谢,尝试了
\b(?<!(-|\(|\/|\)))[0-9]{7}(?!-|\(|\/|\))\b并且似乎有效。但是看到下面的cmets,我觉得有点太复杂了。
标签: regex