有人可以帮我用正则表达式来匹配一系列 IP。它应该匹配这样的内容:
"203.0.113.0-203.0.113.255"
我尝试了以下操作,但仅匹配单个 IP:
((?:\\d{1,3}\\.){3}\\d{1,3})(?:/((?:(?:\\d{1,3}\\.){3}\\d{1,3})|\\d{1,2}))?
最佳答案
您可以将字符串分成两个部分
String[] splitResult = ipRange.split("-");
然后对每个子字符串使用此模式
string pattern = @"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b"
您的模式实际上不起作用,因为每个 IP 部分最多只能达到 255
关于java - 正则表达式匹配 IP 范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15525974/