从谷歌分析中排除多个IP地址范围 - 麻烦/正则表达式

时间:2014-12-29 19:59:02

标签: regex google-analytics

我正在进入谷歌分析的正则表达式是无效的,我希望有人可以帮我解决它们。我想要排除的范围是:

192.168.0.1-100

192.168.100-200.100-200

我使用的原始陈述是:

^192\.168\.0\.([1-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|6[0-9]|7[0-9]|8[0-9]|9[0-9]|10[0-9])$

^192\.168\.(10[1-9]|11[0-9]|12[0-9]|13[0-9])|14[0-9]|15[0-9]|16[0-9]|17[0-9]|18[0-9]|19[0-9]|20[0])\.(10[1-9]|11[0-9]|12[0-9]|13[0-9]|14[0-9]|15[0-9]|16[0-9]|17[0-9]|18[0-9]|19[0-9]|20[0])$

如果我选择“以”开头“,Google会保存过滤器,但我的分析与网站的未过滤视图没有区别。如果我选择“等于”,谷歌称它们无效。

一些额外的研究表明我可以将表达式写成:

^192\.168\.0\.([1-9]|[1-9][0-9]|100)$

^192\.168\.(100\.(1([0-9][0-9])|2([0-4][0-9]|5[0-5]))|((1(0[1-9]|[1-9][0-9]))\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5])))|200\.([0-9]|[1-9][0-9]|1([0-9][0-9])|200))$

不幸的是,与原始陈述的结果相同。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

你的第二个正则表达式有点不稳定,并且允许200-250个位置,应该是这样:

^192\.168(\.(1[0-9][0-9]|200)){2}$

请注意,由于您的第三个和第四个八位字节相同,我们只使用了parens和{2}来匹配其中两个。

答案 1 :(得分:1)

第一个是好的,我不知道第二个,但是这个(取代第二个)应该有效:

^192\.168(\.(1[0-9][0-9]|200)){2}$

https://www.regex101.com/r/yN1dD9/2