Оформление
REGEXP - определение соответствия между строкой и регулярным выражением.
1. извлечение данных
1.1 Использование I
1) Обзор
| словарь | REGEXP(str, pattern) | Соответствует ли строка str шаблону регулярного выражения. |
|---|---|---|
| Параметр 1 | str | строка (информатика) |
| Параметр 2 | шаблон | регулярное выражение (математика) |
2) условия
- Чтобы использовать символ \, нужно добавить еще один обратный слеш. Поэтому, когда формула regexp (строка, "\d") выдаст ошибку, ее нужно записать как regexp (строка, "\\\\d"), как показано ниже:

- Два параметра типа текста
3) Примеры
| формулы | в конце концов | примечание |
|---|---|---|
| REGEXP("aaaaac", "a*c") | правда | |
| REGEXP("abc", "a*c") | ложь |
В этой статье мы рассмотрим \d и \w в качестве примера использования этой функции для редактирования данных, где \d означает совпадение чисел, а \w - совпадение букв, цифр, подчеркиваний или китайских символов, как показано на рисунке ниже:

Другие примеры регулярных выражений см. в разделе: Примеры регулярных выражений.
1.2 Использование II
1) Обзор
| словарь | REGEXP(str, pattern, intNumber) | Соответствует ли строка str шаблону регулярного выражения с заданным шаблоном intNumber? |
|---|---|---|
| Параметр 1 | str | строка (информатика) |
| Параметр 2 | шаблон | регулярное выражение (математика) |
| Параметр 3 | intNumber | данная модель |
2) условия
Шаблон для intNumber показан ниже:
Задав intNumber равным сумме двух режимов, вы можете включить несколько режимов одновременно, например intNumber=1+2=3, что означает, что вы можете одновременно включить режим строк Unix и режим совпадения без учета регистра.
| режим intNumber | концептуальный |
|---|---|
| intNumber=1 | UNIX_LINES Включает режим строк Unix, в котором распознаются только " " терминаторы строк в поведении " ". ", "^" и "$" распознаются в поведении только " " терминаторов строк |
| intNumber=2 | CASE_INSENSITIVE Включает сопоставление без учета регистра. По умолчанию при сопоставлении без учета регистра предполагается, что сопоставляются только символы из набора символов US-ASCII. Можно включить нечувствительное к регистру сопоставление с учетом Юникода, указав вместе с этим режимом режим UNICODE_CASE. |
| intNumber=4 | COMMENTS Включите режим "Разрешить пробелы и комментарии". В этом режиме игнорируются пробелы и встроенные комментарии, начинающиеся с # перед завершающей строкой. |
| intNumber=8 | MULTILINE Включение многострочного режима |
| intNumber=16 | LITERAL Включает режим анализа текста. Когда этот режим включен, входная строка рассматривается как последовательность символов буквального значения. Метасимволы или управляющие последовательности во входной строке не имеют специального значения.Режим CASE_INSENSITIVE и режим UNICODE_CASE влияют на совпадение при использовании этого режима. В других режимах это не влияет. |
| intNumber=32 | DOTALL Включите режим dotall, выражение ". " может соответствовать любому символу, включая терминаторы строк. По умолчанию это выражение не совпадает с терминаторами строк. |
| intNumber=64 | UNICODE_CASE Включает свертывание регистра с учетом Юникода. Если указан этот режим и также включен режим CASE_INSENSITIVE, то соответствие с учетом регистра выполняется в соответствии с Юникодом. |
| intNumber=128 | CANON_EQ Включает режим канонической эквивалентности, который, если включен, позволяет считать два символа совпадающими тогда и только тогда, когда их полное каноническое разложение совпадает. |
- Поддерживает первые два параметра в виде текста, а третий параметр - в виде числового типа
3) Примеры
| формулы | в конце концов | Описание формулы |
|---|---|---|
| REGEXP("Aaaaabbbbbc", "a*b*c", 3) | правда | Указывает, что включены как режим строк Unix, так и режим совпадения без учета регистра. Поэтому возвращается true |
| REGEXP("Aaaaabbbbbc", "a*b*c", 1) | ложь | Указывает, что режим строк Unix также включен, и возвращает false, поскольку чувствителен к регистру. |
| REGEXP("Abc", "abc", 2) | правда | Указывает на то, что режим нечувствительности к регистру включен, поэтому возвращает true. |
REGEXP("Abc", "abc", 2), как показано ниже:

2. версия с прямым подключением
1) Обзор
| словарь | REGEXP(str,pattern) | Соответствует ли строка str шаблону регулярного выражения? |
|---|---|---|
| Параметр 1 | str | строка (информатика) |
| Параметр 2 | шаблон | регулярное выражение (математика) |
2) условия
Первый параметр - тип текста, второй - тип текста.
Базы данных SAP Sybase и Microsoft SQL Server не поддерживают эту функцию.
3) Примеры
| формулы | в конце концов | примечание |
|---|---|---|
| REGEXP("aaaaac", "a*c") | правда | |
| REGEXP("abc", "a+c") | ложь |