Регулярные выражения RegExp

В платформе Directual предусмотрено использование регулярных выражений. Регулярное выражение – это шаблон для поиска строки в тексте. Шаблон представляет собой набор буквенных и цифровых символов, а также метасимволы, имеющие специальное значение в синтаксисе регулярных выражений.

Простой пример

Найдём в известной панграмме "Съешь ещё этих мягких французских булок, да выпей же чаю." все заглавные буквы, буквы "и", а также пробелы.

Это можно сделать с помощью регулярного выражения: [(и)(А-Я)\s], где (и) — ищет букву "и" в строке, (А-Я)— заглавные буквы, \s — пробел, табуляцию или новую строку.

Применение в платформе

Задать регулярное выражение в платформе можно в:

Виды регулярных выражений

Выражение

Описание

Результат на примере

[а-е]

Строка включает любые символы алфавита в строке между указанных букв, включая а-е.

Съешь ещё этих мягких французских булок, да выпей же чаю.1

[^ae]

Строка включает любые символы в строке исключая а-е.

Съешь ещё этих мягких французских булок, да выпей же чаю.11

[абе]

В строке присутствуют перечисленные символы в скобках.

Съешь ещё этих мягких французских булок, да выпей же чаю.11

[^а-е]

Строка соответствует любым символам, кроме тех, которые находятся в диапазоне а-е.

Съешь ещё этих мягких французских булок, да выпей же чаю.11

[а-еА-Е]

Строка соответствует любым символам между а-е или А-Е. Вы можете комбинировать столько, сколько пожелаете.

Съешь ещё этих мягких французских булок, да выпей же чаю.11

.+

Строка соответствует любому символу, кроме новой строки (или новой строки с флагом / s).

Съешь ещё этих мягких французских булок, да выпей же чаю.11

\s

Соответствует любому символу пробела, табуляции или новой строки.

Съешь_ещё_этих_мягких_французских_булок,_да_выпей_же_чаю.11

\S

Соответствует чему-либо, кроме пробела, табуляции или новой строки.

Съешь ещё этих мягких французских булок, да выпейже_чаю.11

\d

Соответствует любой десятичной цифре. Эквивалентно [0-9].

Съешь ещё этих мягких французских булок, да выпей же чаю.11

\D

Любые символы, кроме десятичной цифры.

Съешь ещё этих мягких французских булок, да выпей же чаю.11

\w

Соответствует любой букве, цифре или подчеркиванию. Справедливо для латиницы. Эквивалентно [a-zA-Z0-9_].

Съешь ещё этих мягких французских булок, да выпей же чаю._11

\W

Совпадает с чем угодно, кроме буквы, цифры или подчеркивания.

Съешь ещё этих мягких французских булок, да выпей же чаю._11

(...)

Части регулярного выражения, заключенные в скобки, могут быть упомянуты позже в выражении или извлечены из результатов успешного сопоставления.

Съешь ещё этих мягких французских булок, да выпей же чаю._11

(б|у)

Части регулярного выражения, заключенные в скобки, могут быть упомянуты позже в выражении или извлечены из результатов успешного сопоставления.

Съешь ещё этих мягких французских булок, да выпей же чаю._11

а?

Соответствует символу a или ничему.

Съешь ещё этих мягких французских булок, да выпей же чаю._11

а*

Любые символы вместе с а

Съешь ещё этих мягких французских булок, да выпей же чаю._11

а+нц

Соответствует одному или нескольким символам после a

Съешь ещё этих мягких французских булок, да выпей же чаю._11

а{3}

Совпадает ровно с 3 последовательными одинаковыми символами a.

Съешь ещё этих мягких французских булок, дааа выпей же чаю._11

а{3,}

Соответствует как минимум 3 последовательным одинаковыми символам a.

Съешь ещё этих мягких французских булок, дааа выпей же чаю._11

а{3,6}

Совпадает от 3 до 6 (включительно) последовательных одинаковых символов a.

Съешь ещё этих мягких французских булок, даааааааа выпей же чаю._11

^

Соответствует началу строки без использования каких-либо символов. Если используется многострочный режим, он также будет соответствовать сразу после символа новой строки.

$

Соответствует концу строки без использования каких-либо символов. Если используется многострочный режим, он также будет совпадать непосредственно перед символом новой строки.

\b

Соответствует без использования каких-либо символов непосредственно между символом, совпадающим с w, и символом, не совпадающим с w (в любом порядке). Его нельзя использовать для отделения не слов от слов.

\B

Соответствует без использования каких-либо символов в позиции между двумя символами, совпадающими с \w.

Для проверки можно использовать сервис regex101.com

Регулярные выражения этим списком не ограничиваются. Возможностями платформы предусмотрены RegExp выполняемыми в языке Java.