Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция
Область применения:
Databricks SQL
Databricks Runtime
Заменяет все подстроки в str, которые соответствуют regexp, на rep.
Синтаксис
regexp_replace(str, regexp, rep [, position] )
Аргументы
-
str: выражениеSTRING, которое должно соответствовать. -
regexpSTRING: выражение с соответствующим шаблоном. -
repSTRING: выражение, являющееся строкой замены. -
position: необязательный целочисленный числовый литерал больше 0, указывая, где начать сопоставление. Значение по умолчанию — 1.
Возвраты
STRING.
Строка regexp должна быть регулярным выражением. Сведения о поддерживаемых синтаксисах см. в регулярных выражениях .
При использовании литералов используйте raw-literal (r префикс), чтобы избежать предварительной обработки escape-последовательностей.
Поиск начинается с точки position. По умолчанию используется значение 1, что отмечает начало str.
Если position превышает длину str, результат будет str.
Распространенные условия ошибки
Примеры
Замените каждое совпадение фиксированным текстом
> SELECT regexp_replace('100-200', r'(\d+)', 'num');
num-num
Цифры маски
> SELECT regexp_replace('SSN 123-45-6789', r'\d', '#');
SSN ###-##-####
Изменение порядка частей с помощью групп отслеживания
В строке замены используйте $ номер группы для ссылки на группу записи ($1, $2).
> SELECT regexp_replace('2024-03-15', r'(\d{4})-(\d{2})-(\d{2})', '$3/$2/$1');
15/03/2024
Свернуть повторяющееся пробелы
> SELECT regexp_replace('too many spaces', r'\s+', ' ');
too many spaces
Недопустимый шаблон регулярных выражений
> SELECT regexp_replace('abc', '[invalid', 'x');
Error: INVALID_PARAMETER_VALUE.PATTERN