我想知道这是否是匹配一个以私有IP地址(Perl样式的正则表达式)开头的字符串的最佳方法:
(^127\.0\.0\.1)|(^192\.168)|(^10\.)|(^172\.1[6-9])|(^172\.2[0-9])|(^172\.3[0-1])
非常感谢!
我假设你想要匹配这些范围:
原文链接:https://www.f2er.com/regex/357609.html127. 0.0.0 – 127.255.255.255 127.0.0.0 /8 10. 0.0.0 – 10.255.255.255 10.0.0.0 /8 172. 16.0.0 – 172. 31.255.255 172.16.0.0 /12 192.168.0.0 – 192.168.255.255 192.168.0.0 /16
你会丢失一些点,这样会导致它接受例如172.169.0.0,尽管这不应该被接受。我在下面修正了删除新行,只是为了可读性。
(^127\.)| (^10\.)| (^172\.1[6-9]\.)|(^172\.2[0-9]\.)|(^172\.3[0-1]\.)| (^192\.168\.)
还要注意,这假设IP地址已经被验证 – 它接受的东西,如10.foobar。