Регулярные выражения
В этом разделе описываются следующие функции регулярных выражений:
| Функция | Описание |
|---|---|
| REGEX_EXTRACT | Находит первое совпадение шаблона регулярного выражения в строке и возвращает запрошенный номер группы захвата |
| REGEXP_EXTRACT_ALL | Сопоставляет регулярное выражение со входной строкой. Возвращает группы захвата, если они существуют, или исходную строку, если их нет. |
| REGEXP_LIKE | Оценивает шаблон регулярного выражения и определяет, содержится ли он в строке. |
| REGEX_MATCH_POSITION | Сопоставляет регулярное выражение со входной строкой и возвращает индекс первого совпадения |
| REGEX_NAMED_GROUPS | Сопоставляет регулярное выражение со входной строкой. Возвращает запись с именами полей и именами групп |
| REGEXP_REPLACE | Оценивает шаблон регулярного выражения и заменяет каждое найденное вхождение заменой |
Шаблоны регулярных выражений
Шаблоны регулярных выражений, используемые при сопоставлении шаблонов RegEx, описаны в таблице ниже:
| Выражение | Контактные данные | Описание |
|---|---|---|
| Любой символ | . | Соответствует любому отдельному символу, кроме разрыва строки. |
| Ноль или более | * | Соответствует нулю или более вхождений предыдущего выражения, находя все возможные совпадения. |
| Одно или более | + | Соответствует по крайней мере одному вхождению предыдущего выражения. |
| Начало строки | ^ | Привязывает строку соответствия к началу строки. |
| Конец строки | $ | Привязывает строку соответствия к концу строки. |
| Начало слова | < | Совпадает только тогда, когда слово начинается в этой точке текста. |
| Конец слова | > | Совпадает только в том случае, если слово заканчивается в этой точке текста. |
| Разрыв строки | \n | Совпадает с разрывом строки, не зависящим от платформы. В выражении Replace вставляет разрыв строки. |
| Цифры | \d | Соответствует любой цифре [0-9]. |
| Любой один символ в наборе | [] | Соответствует любому из символов внутри []. Чтобы указать диапазон символов, перечислите начальный и конечный символы, разделенные дефисом (-), например [a-z]. |
| Соответствует любому символу, не входящему в набор символов, следующих за ^. | [^...] | Соответствует любому символу, не входящему в набор символов, следующих за ^. |
| Или | | | Соответствует выражению до или после символа ИЛИ (|). В основном используется внутри группы. Например, (sponge|mud) bath соответствует «sponge bath» и «mud bath». |
| Помеченное выражение | {} | Соответствует тексту, помеченному заключенным выражением. |
| /Идентификатор C++ | :i | Соответствует выражению ([a-zA-Z_$][a-zA-Z0-9_$]*). |
| Строка в кавычках | :q | Соответствует выражению (("[^"]")|('[^']')). |
| Пробел или табуляция | :b | Соответствует символам пробела или табуляции. |
| Соответствует выражению ([0-9]+). | :z | Целое число :z Соответствует выражению ([0-9]+). |