【发布时间】:2017-03-15 18:33:35
【问题描述】:
我需要验证应遵循 IPv4 代理模式的字符串。 但是 0.0.0.0(...) 是不允许的
0.0.0.0/23(not match)
0.0.0.0/0(not match)
12.2.3.4/23(match)
13.2.3.53(match)
目前我有正则表达式来匹配(IP 和 IP 代理)
(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\/\d+)?
但是我怎么能排除 0.0.0.0 或 0.0.0.0/...
【问题讨论】:
-
用
^(?!0\.0\.0\.0/)开始你的正则表达式 -
...除非正则表达式引擎不支持环视。
-
那么您在这里使用的是哪个正则表达式引擎?
-
在 bash 环境中@Jan
-
如何添加“AND”排除环视。我尝试了 (?!(0\.0\.0\.0)) 和 ^(?!0\.0\.0\.0/) 这不起作用,我可能会犯语法错误@anubhava
标签: regex regex-negation regex-lookarounds regex-group