Использование REGEX REPLACE для группировки путей URL по первому сегменту - PullRequest
0 голосов
/ 14 мая 2018

Как бы я использовал REGEXREPLACE для группировки путей URL на основе только первой части пути (после домена):

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

URL-адреса должны группироваться следующим образом:

/
foo
xyz

Моя самая большая проблема с этим заключается в том, как переименовать группы без предварительного определения группы (они должны использовать соответствующую строку регулярного выражения в качестве имени).

1 Ответ

0 голосов
/ 15 мая 2018

Вы можете использовать

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

Регулярное выражение означает

  • ^ - начало строки
  • / - косая черта
  • ([^/]+) - Захват группы 1 (что будет возвращено): 1 или более символов, отличных от / char.

При операции замены вы будете использовать

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

Здесь остальная часть строки соответствует .*, а $1 вставляет значение группы захвата в результирующую строку.

...