2

我有点难过,并从类似的帖子中尝试了一些解决方案,但谷歌的 Data Studio 似乎不喜欢lookbehinds。

到目前为止,我已经提出了以下匹配“/products”之前的文本:

.+?(?=\/products)

但是,如果“/products”不存在,我也需要它来返回完整的测试。

  • 例如1:

    /sometext/somemoretext/产品

应该返回:/sometext/somemoretext

  • 例如 2:

    /sometext/somemoretext

应该返回:/sometext/somemoretext

4

1 回答 1

1

您可以使用

^(.+?)(?:/products|[?]utm|$)

请参阅正则表达式演示。细节:

  • ^- 字符串的开始
  • (.+?)- 捕获组 1:尽可能少的除换行符之外的任何一个或多个字符
  • (?:/products|[?]utm|$)- 一个匹配的非捕获组
    • /products|-/products
    • [?]utm-?utm
    • |- 或者
    • $- 字符串结束。
于 2020-12-29T21:29:22.377 回答