2017-10-18 72 views
0

我试图在谷歌分析中创建一个自定义过滤器来删除我不想看到的url的查询部分。该URL的结构如下正则表达式忽略来自字符串的前12个字符

[domain]/?p=899:2000:15018702722302::NO::: 

我想创造出跳过前12个字符的正则表达式(即至:/P = 899:2000),并且什么都将是后用什么都不代替它。

所以我做了这一个:https://regex101.com/r/Xgbfqz/1(可以简化为{0,12}),但我实际上想跳过这些,只让正则表达式匹配之后会发生的任何事情,这样我在Google Analytics中可以将其替换为“”。

中,始终是相同的URL部分

?p=[3numbers]:[0-4numbers] 

谢谢

+1

总之,可以指定样本输入和相应的输出? – gurvinder372

+0

你应该可以用['^/\?p = [0-9] {0,3}:[0-9] {0,4}(。*)']( https://regex101.com/r/Xgbfqz/2) –

+0

@Elvira:Google Analytics使用RE2正则表达式引擎,而不是JS。 –

回答

1

你的正则表达式:

\/\?p=\d{3}\:\d{0,4}(.*) 

测试中Golang RegEx 2RegEx101

它搜索/ p = ###:[可选:####]并捕获右侧字符串的其余部分。


(额外)的JavaScript:

paragraf='[domain]/?p=899:2000:15018702722302::NO:::' 
 
var regex= /\/\?p=\d{3}\:\d{0,4}(.*)/; 
 
var match = regex.exec(paragraf); 
 
alert('The rest of the right side of the string: ' + match[1]);

0

,可轻松使用"[domain]/?p=899:2000:15018702722302::NO:::".substr(12)

相关问题