Исключить uuid из URL в запросе большого запроса с помощью регулярного выражения - PullRequest
0 голосов
/ 09 октября 2018

У меня есть таблица с URL-адресом в виде:

/api/v2/order/3882-f4e2-0023-fe56

Я хочу сгруппировать URL-адреса, исключая uuid для заказа.Я попытался с помощью следующей функции:

SELECT ... FROM ... 
GROUP BY REGEXP_EXTRACT(url , '(/[a-zA-Z0-9]+)+(?:(\\/(([a-fA-F0-9]{4}(-)*)){4}))')

Но я получаю следующую ошибку:

Ошибка: должна быть указана только одна группа захвата

Я пробовал регулярное выражение на этом сайте онлайн-тестирования, и оно соответствует желаемому URL: https://regexr.com/40tjs

1 Ответ

0 голосов
/ 09 октября 2018

Я попытался минимально настроить ваше исходное выражение (для BigQuery Standard SQL)

REGEXP_EXTRACT (url, r '((?: / [A-zA-Z0-9] +) +) (?:/ (?: (?: [a-fA-F0-9] {4} -) *) {4}) ')

дает ниже для '/api/v2/order/3882-f4e2-0023-fe56'

    /api/v2/order
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...