从Google Analytics(分析)的RegEx表达式中排除特定的字符串

问题描述 投票:0回答:2

我在Google Analytics(分析)中具有以下基本的RegEx表达式,其中包含城市名称列表。

(toronto|vancouver|calgary|halifax|winnipeg|ottawa|edmonton|regina|mississauga)

我想在查询中添加另一个表达式,以便如果匹配的文本中也包含单词“ job”,则返回结果[

regex google-analytics regex-negation
2个回答
0
投票
[编辑后的答案]可行:

^((?!job).)*(toronto|vancouver|calgary|halifax|winnipeg|ottawa|edmonton|regina|mississauga)(?!.*job)

仅当城市名称之前或之后不存在“职位”时,它才与城市名称匹配。

请参见https://regex101.com/r/tXfBGf/3


-1
投票
提供了正则表达式的味道,包括捕获组,使用The Best Regex Trick即可轻松解决,前提是排除。本质上:

"string".match(/(?:a|b|c)job|(a|b|c)/).match_group(1),其中:?::请勿将先前的排除项保存在捕获组中;(a|b|c)job是避免捕获的字符串;|(a|b|c)是要捕获的字符串。

这是可行的,因为如果文本与不需要的文本ajob相匹配,则永远不会填充捕获组。仅当所需文本aajob

匹配时才填充
© www.soinside.com 2019 - 2024. All rights reserved.