首页 > 解决方案 > 使用正则表达式在 Google Datastudio 中提取 URL 文件夹

问题描述

在我的 datastudio 中,我目前正在尝试通过在单独的计算字段中使用组参数来提取 URL 文件夹及其子目录。

第一个计算字段如下所示:

REGEXP_EXTRACT(Landing Page,'https?:\\/\\/.*?\\/(.*?)\\/.*')

对于每个文件夹级别,我会将组移动一个目录级别(依此类推......):

REGEXP_EXTRACT(Landing Page,"https?:\\/\\/.*?\\/.*?\\/(.*?)\\/.*")

问题是最后没有斜杠的每个 URL 都被分组为“null”。我试图使最后一个斜杠成为可选的,但这根本行不通。

REGEXP_EXTRACT(Landing Page,'https?:\\/\\/.*?\\/(.*?)\\/?.*')

标签: regexregex-groupgoogle-data-studiore2

解决方案


我建议在这里使用否定字符类。

要获得第一个子部分,您可以使用

REGEXP_EXTRACT(Landing Page, "https?://[^/]+/([^/]+)/[^/]+")
                                              ^^^^^^^

要获得第二个,您可以使用

 REGEXP_EXTRACT(Landing Page, "https?://[^/]+/[^/]+/([^/]+)")
                                                     ^^^^^^^ 

请注意,您不必转义/字符,它不是特殊的正则表达式元字符。

请参阅正则表达式演示


推荐阅读