1
我試圖在Google Analytics中設置一個排除過濾器來排除除一個參數外的所有查詢參數。谷歌分析 - 排除除一個之外的所有參數
我發現,表達排除所有URL參數
^[^?]+(\?.*)
但我找不到任何方式修改,以排除所有參數除了「Q =」。 有沒有人有任何想法,我可以如何實現這一目標?
謝謝
我試圖在Google Analytics中設置一個排除過濾器來排除除一個參數外的所有查詢參數。谷歌分析 - 排除除一個之外的所有參數
我發現,表達排除所有URL參數
^[^?]+(\?.*)
但我找不到任何方式修改,以排除所有參數除了「Q =」。 有沒有人有任何想法,我可以如何實現這一目標?
謝謝
在GA中,使用了RE2引擎,並且它不支持lookahead。因此,使「排除」工作的唯一方法是使用具有否定字符類別的交替。
使用
^[^?]+(\?(q[^=]|[^q]=|[^q][^=]).*)
正則表達式表示:
^
- 匹配字符串[^?]+
的開始 - 匹配1或大於?
(\?(q[^=]|[^q]=|[^q][^=]).*)
其它多個字符 - 第1組:
\?
- 一個字面?
(q[^=]|[^q]=|[^q][^=])
- 組匹配任一q
+任何字符,但一個=
,或者任何字符,但一個q
遵循的=
,或者任何字符,但一個q
後跟任何字符,但一個=
.*
- 任何字符,但換行到字符串的結尾。
''[?&] $'模式與'?q ='中的'?'不匹配。如果您需要匹配它,請使用[[?&]($ | q =)' –
抱歉,我複製了錯誤的表達式,我找到的是^ [^?] +(\?。*) – user2475110
嘗試[ [?^]^+(?:\(q [^ =] | [^ q] = | [^ q] [^ =])*。)'](https://regex101.com/r/nI0nW9/1 )。如果你說它不起作用,請解釋爲什麼,什麼是錯誤的匹配,以及應該匹配什麼。 –