正则表达式,看看ip是否以156.21.x.x开头

时间:2011-10-18 21:13:47

标签: regex google-analytics

我正在为谷歌分析编写一个正则表达式,我需要阻止来自156.21.x.x的任何IP。我不关心前两个八位字节。我想保留正则表达式尽可能少的字符,因为谷歌只允许255个字符,我的正则表达式已经非常大。

3 个答案:

答案 0 :(得分:2)

不确定正则表达式的含义或使用的是什么,但这适用于大多数正则表达式引擎:

156\.21\.\d{1,3}\.\d{1,3}

当然,这将匹配无效的ip,如156.21.777.888,但如果您的解析列表不包含无效的IP地址,那么您应该没问题。或者:

156\.21(\.\d{1,3}){2}

答案 1 :(得分:2)

如果您的空间不足,这可行,但您也可以匹配非IP地址。如果您认为Google会为您提供有效的IP地址,那么这是您最短的选择:

^156\.21\.

匹配以下内容:156.21.1.1 156.21.1000.1000 156.21.ABC

但不符合http://156.21.1.1 ehlo 156.21.1000.1000

答案 2 :(得分:1)

以下正则表达式将匹配(几乎)以156.21开头的有效IPv4地址:

(156\.21(?:\.[\d]{1,3}){2})