Как получить количество совпадений регулярного выражения в строке в bigquery? - PullRequest
0 голосов
/ 07 марта 2019

Как можно получить количество совпадений регулярного выражения в строке в bigquery?Я не думаю, что bigquery sql поддерживает regexp_count.

Так, например, вы можете посчитать совпадения "foo *" в строке типа "foo1 foo foo40", и она вернет счетчик 2(в данном случае я имею в виду, что "*" должна быть непустой строкой).

Спасибо!

1 Ответ

1 голос
/ 07 марта 2019

Ниже для BigQuery Standard SQL

Вы можете использовать комбинацию array_length и regexp_extract_all, как в примере ниже

#standardSQL
WITH `project.dataset.table` AS (
SELECT "foo1 foo foo40" str
)
SELECT array_length(regexp_extract_all(str, r'foo[^\s]')) matches
FROM `project.dataset.table`   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...