使用 REGEX REPLACE 按第一段对 URL 路径进行分组

Using REGEX REPLACE to group URL paths by first segment

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

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

URL 应该分组如下:

/
foo
xyz

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

你可能真的会用到

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

正则表达式表示

  • ^ - 字符串开头
  • / - 斜杠
  • ([^/]+) - 捕获第 1 组(将返回什么):除 / 字符之外的 1 个或多个字符。

对于替换操作,您将使用

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

此处,字符串的其余部分与 .* 匹配, 将捕获组值插入到结果字符串中。