GA正则表达式匹配前缀或后缀

时间:2013-08-14 19:01:16

标签: regex google-analytics

我试图为GA关键字做一对二合一正则表达式匹配

想要说明以下内容:可选前缀或可选后缀中的一个(或两者)必须存在才能匹配 - 以及所需的中间'字符串,'人物'在这种情况下

所以只有这些组合才能匹配:

people
happy people
happy people smile
happy people smile often
people smile
people smile often

这不匹配:

happy people smile often in Connecticut

或其他任何事情

我从未使用过前瞻;我猜这可能是解决方案(?)

如果有任何

,请打开其他解决方案

同样,如果有人需要了解正则表达式的风格,我会使用Google Analytics

虽然上面的列表非常有用,但我还需要知道如何做到这一点,以便" people"单独一些查询不匹配,但只有示例中的第2-6行

所以我想我真的需要两个表达式

1 个答案:

答案 0 :(得分:1)

这应该这样做。由于people在所有变体中都很常见,因此我们将其用作明确的匹配(否则您最终会匹配任何内容而不是任何内容)。因此,happy不是必需的,我们正在添加?量词来说明它是否存在。另请注意,我在分组括号内包含了一个空格。始终需要下一个people,然后是smilesmile often(带有适当的空格)。现在,如果您需要来自这些不同短语的指标,则需要将它们设置为不同的过滤器。对于您列出的所有单词,下面的代码返回true。我们使用^作为行的开头,使用$作为行尾,这样我们就可以确保不会在较长的短语中为这些单词返回true。

^(happy )?people( smile| smile often)?$

根据您的额外请求,为了简单起见,我们可以完全将其作为or语句。我已经按照这种速度订购了它,因为REGEX从左到右检查。如果遇到不存在的空格,它将转到or的下一部分。

^(people smile often|people smile|happy people smile often|happy people smile|happy people)$