首页 > 解决方案 > 使用 REGEX REPLACE 按第一段对 URL 路径进行分组

问题描述

我将如何使用REGEXREPLACE仅基于路径的第一部分(在域之后)对 URL 路径进行分组:

/
/foo/
/foo/bar
/xyz/abc
/xyz

URL 的分组如下:

/
foo
xyz

我最大的问题是如何在不预定义组的情况下重命名组(它们应该使用匹配的正则表达式字符串作为名称)。

标签: regexgoogle-data-studiore2

解决方案


您实际上可以使用

REGEXP_EXTRACT(URL, '^/([^/]+)')

正则表达式的意思

  • ^- 字符串的开始
  • / - 一个斜线
  • ([^/]+)- 捕获组 1(将返回的内容):除 char 之外的 1 个或多个字符/

通过替换操作,您将使用

REGEXPREPLACE(URL, "^/([^/]+).*", "$1")

在这里,字符串的其余部分与捕获组值匹配.*并将$1其插入到结果字符串中。


推荐阅读