Перейти к основному содержимому Перейти к дополнительному содержимому

ExtractRegExGroup — функция скриптa и диаграммы

ExtractRegExGroup() извлекает текст из входного строкового выражения, используя указанный шаблон составного регулярного выражения. При использовании функции укажите группу, которую следует использовать в составном регулярном выражении. Функция возвращает нулевое значение, если не найдено ни одного совпадения.

Если используется функция ExtractRegExGroup() в операторе LOAD, а field_no опускается, то функция будет возвращать несколько записей. Если с помощью функции ExtractRegExGroup() загружено несколько полей, будет создано декартово произведение всех возможных комбинаций.

Эта функция выполняет операции с регулярными выражениями, чувствительные к регистру. В качестве альтернативы можно использовать вариант ExtractRegExGroupI() для выполнения операций с регулярными выражениями без учета регистра.

Синтаксис:  

ExtractRegExGroup (text, regex, group [, field_no])

Возвращаемые типы данных: строка

Аргументы
Аргумент Описание
text Строковое выражение, содержащее текст, который будет извлечен в возвращаемое значение.
regex Регулярное выражение, которое будет использоваться для извлечения текста.
group

Номер группы в случае составного регулярного выражения.

Если регулярное выражение содержит только одну группу, используйте вместо этого функцию ExtractRegEx(). В качестве альтернативы используйте функцию ExtractRegExGroup() с group=0.

Можно указать отрицательное значение group для поиска совпадений справа налево.

field_no

Номер совпадения, которое нужно извлечь. Это полезно, когда в тексте может быть найдено несколько совпадений с регулярным выражением. Например, укажите значение 4, чтобы извлечь четвертое совпадение.

Данный аргумент является необязательным. Если значение на задано, по умолчанию используется 1.

Примеры функции
Пример Результат
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',1) Возвращает abc (первая группа первого совпадения).
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',1,2) Возвращает def (первая группа второго совпадения).
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',2) Возвращает 123 (вторая группа первого совпадения).
ExtractRegExGroup('abc123 def456','([a-z]+)([0-9]+)',2,2) Возвращает 456 (вторая группа второго совпадения).

Когда это следует использовать

Можно использовать Extract RegEx() для извлечения информации, которую требуется изолировать от данных, которые могут также содержать другую информацию (например, произвольный текст или строки JSON). Пример.

  • Извлекайте из текста адреса электронной почты, номера телефонов, номера счетов и другую информацию.

  • Извлекайте из текста числовые значения (например, денежные суммы).

  • Стандартизируйте форматирование текстовых или числовых данных.

Пример 1: скрипт загрузки для разбора кодов транзакций

Пример 2: скрипт загрузки для извлечения контактной информации о предприятий

Пример 3: скрипт загрузки для извлечения компонентов из кодов ISBN

Пример 4: выражения диаграммы для извлечения контактной информации предприятия (со сравнением ExtractRegEx())

Пример 5: Разбор URL (со сравнением ExtractRegEx() )

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!