#regex #pattern-matching #snowflake-cloud-data-platform
#регулярное выражение #сопоставление с шаблоном #snowflake-облачная платформа для обработки данных
Вопрос:
Я пытаюсь найти строку с повторяющимися шаблонами в таблице snowflake. Я пытаюсь получить это с помощью регулярного выражения.
Пример: Строка : 'abc' , 'abcabc' , 'snowsnowflake'
Запрос возвращает только «‘abcabc’, ‘snowsnowflake’ «. Потому что он имеет повторяющиеся шаблоны.
Спасибо.
Комментарии:
1. Попробуйте
(. )1
Ответ №1:
Я не мог заставить его работать с обычным регулярным выражением в SQL, но я смог создать UDF JavaScript для получения желаемых результатов:
create or replace function find_repeated("x" string)
returns string
language javascript
as
$
return x.match(/(. )1/g)
$;
select x.value
, find_repeated(x.value)
, find_repeated(x.value) is not null has_repeated
from table(split_to_table('abc,abcabc,snowsnowflake', ',')) x