Regular expression: Difference between revisions
From Planfix
(Created page with " == Go To == *Email rules: Extracting data *Creating and editing rules *Rules for creating tasks by email *Feature Description") |
No edit summary |
||
Line 1: | Line 1: | ||
'''Регулярные выражения''' в [[Правила создания задач по e-mail | правилах обработки почты]] позволяют выделять нужный фрагмент текста в процессе [[Правило для почты: Извлечение данных | извлечения данных из письма]]. | |||
== Важно == | |||
*Использование регулярных выражений подразумевает наличие '''навыков программирования'''. Если у вас нет этих навыков, рекомендуем обратиться к специалистам, которые ими обладают. | |||
== Формат регулярных выражений == | |||
В ПланФиксе используется формат регулярных выражений принятый в Java. Синтаксис регулярных выражений основан на использовании символов <([{\^-=$!|]})?*+.>, которые можно комбинировать с буквенными символами для получения метасимвола. Наиболее употребляемые метасимволы перечислены в таблице: | |||
{| class="wikitable" style="text-align: center;" | |||
|- | |||
! Метасимвол !! Назначение | |||
|- | |||
| <nowiki> ^ </nowiki> || начало строки | |||
|- | |||
| <nowiki> $ </nowiki> || конец строки | |||
|- | |||
| <nowiki> \d </nowiki> || цифровой символ | |||
|- | |||
| <nowiki> \D </nowiki> || нецифровой символ | |||
|- | |||
| <nowiki> \s </nowiki> || символ пробела | |||
|- | |||
| <nowiki> \S </nowiki> || непробельный символ | |||
|- | |||
| <nowiki> \w </nowiki> || буквенно-цифровой символ или знак подчёркивания | |||
|- | |||
| <nowiki> \W </nowiki> || любой символ, кроме буквенного, цифрового или знака подчёркивания | |||
|- | |||
| <nowiki> . </nowiki> || любой символ | |||
|- | |||
| <nowiki> \t </nowiki> || символ табуляции | |||
|- | |||
| <nowiki> \n </nowiki> || символ новой строки | |||
|- | |||
| <nowiki> \r </nowiki> || символ возврата каретки | |||
|- | |||
| <nowiki> [абв] </nowiki> || любой из перечисленных (а,б, или в) | |||
|- | |||
| <nowiki> [^абв] </nowiki> || любой, кроме перечисленных (не а,б, в) | |||
|- | |||
| <nowiki> [a-zA-Z] </nowiki> || слияние диапазонов (латинские символы от a до z без учета регистра) | |||
|- | |||
| <nowiki> [a-d[m-p]] </nowiki> || объединение символов (от a до d и от m до p) | |||
|- | |||
| <nowiki> [a-z&&[def]] </nowiki> || пересечение символов (символы d,e,f) | |||
|- | |||
| <nowiki> [a-z&&[^bc]] </nowiki> || вычитание символов (символы a, d-z) | |||
|- | |||
| <nowiki> ? </nowiki> || один или отсутствует | |||
|- | |||
| <nowiki> * </nowiki> || ноль или более раз | |||
|- | |||
| <nowiki> + </nowiki> || один или более раз | |||
|- | |||
| <nowiki> {n} </nowiki> || n раз | |||
|- | |||
| <nowiki> {n,} </nowiki> || n раз и более | |||
|- | |||
| <nowiki> {n,m} </nowiki> || не менее n раз и не более m раз | |||
|- | |||
|} | |||
== Полезная информация == | |||
*В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате надо взять в скобки, а остальные группы сделать non-capturing '''(?:)''' | |||
*Больше о работе регулярных выражений можно прочитать в [https://javarush.ru/groups/posts/regulyarnye-vyrazheniya-v-java этой статье]. | |||
Revision as of 06:15, 19 April 2021
Регулярные выражения в правилах обработки почты позволяют выделять нужный фрагмент текста в процессе извлечения данных из письма.
Важно
- Использование регулярных выражений подразумевает наличие навыков программирования. Если у вас нет этих навыков, рекомендуем обратиться к специалистам, которые ими обладают.
Формат регулярных выражений
В ПланФиксе используется формат регулярных выражений принятый в 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 (?:)
- Больше о работе регулярных выражений можно прочитать в этой статье.