Регулярные выражения
Материал из Planfix
Регулярные выражения в правилах обработки почты позволяют выделять нужный фрагмент текста в процессе извлечения данных из письма.
Важно
- Использование регулярных выражений подразумевает наличие навыков программирования. Если у вас нет этих навыков, рекомендуем обратиться к специалистам, которые ими обладают.
- Регулярные выражения в ПланФиксе выполняются с опциями Pattern.DOTALL и Pattern.MULTILINE. В онлайн валидаторе — gms.
- Дополнительно использовать регулярные выражения можно в функции REGEXPFIND.
Формат регулярных выражений
В ПланФиксе используется формат регулярных выражений принятый в Java. Синтаксис регулярных выражений основан на использовании символов <([{\^-=$!|]})?*+.>, которые можно комбинировать с буквенными символами для получения метасимвола. Наиболее употребляемые метасимволы перечислены в таблице:
| Метасимвол | Назначение |
|---|---|
| ^ | начало строки |
| $ | конец строки |
| \d | цифровой символ |
| \D | нецифровой символ |
| \s | символ пробела |
| \S | непробельный символ |
| \w | буквенно-цифровой символ или знак подчёркивания |
| \W | любой символ, кроме буквенного, цифрового или знака подчёркивания |
| . | любой символ |
| \t | символ табуляции |
| \n | символ новой строки |
| \r | символ возврата каретки |
| [абв] | любой из перечисленных (а,б, или в) |
| [^абв] | любой, кроме перечисленных (не а,б, в) |
| [a-zA-Z] | слияние диапазонов (латинские символы от a до z без учета регистра) |
| [a-d[m-p]] | объединение символов (от a до d и от m до p) |
| [a-z&&[def]] | пересечение символов (символы d,e,f) |
| [a-z&&[^bc]] | вычитание символов (символы a, d-z) |
| ? | один или отсутствует |
| * | ноль или более раз |
| + | один или более раз |
| {n} | n раз |
| {n,} | n раз и более |
| {n,m} | не менее n раз и не более m раз |
Полезная информация
- В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате надо взять в скобки, а остальные группы сделать non-capturing (?:)
- Больше о работе регулярных выражений можно прочитать в этой статье.