Регулярные выражения: различия между версиями

Материал из Planfix
Перейти к: навигация, поиск
Нет описания правки
Нет описания правки
Строка 50: Строка 50:
|-
|-
|  <nowiki> [a-z&&[^bc]]    </nowiki> ||  вычитание символов (символы a, d-z)  
|  <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 раз
|-
|-
|}
|}
Строка 58: Строка 70:
== Полезная информация ==
== Полезная информация ==
*В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате надо взять в скобки, а остальные группы сделать non-capturing '''(?:)'''
*В результат обработки текста при помощи регулярного выражения попадает первая capturing группа. Соответственно, то, что нужно, чтобы было в результате надо взять в скобки, а остальные группы сделать non-capturing '''(?:)'''
*Больше о работе регулярных выражений можно прочитать в [https://javarush.ru/groups/posts/regulyarnye-vyrazheniya-v-java этой статье].





Версия от 12:55, 14 марта 2020

Регулярные выражения в правилах обработки почты позволяют выделять нужный фрагмент текста в процессе извлечения данных из письма.


Формат регулярных выражений

Используется формат регулярных выражений принятый в 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 (?:)
  • Больше о работе регулярных выражений можно прочитать в этой статье.


Перейти