Читаем Язык программирования Python полностью

Алгоритм, который сопоставляет строки с регулярным выражением, проверяет соответствие того или иного фрагмента строки регулярному выражению. Например, строка «a» соответствует регулярному выражению «[a–z]», строка «fruit» соответствует «fruit|vegetable», а вот строка «apple» не соответствует шаблону «pineapple».

В таблице ниже вместо регвыр может быть записано регулярное выражение, вместо имя — идентификатор, а флаги будут рассмотрены ниже.

ОбозначениеОписание
"(регвыр)"Обособляет регулярное выражение в скобках и выделяет группу
"(?:регвыр)"Обособляет регулярное выражение в скобках без выделения группы
"(?=регвыр)"Взгляд вперед: строка должна соответствовать заданному регулярному выражению, но дальнейшее сопоставление с шаблоном начнется с того же места
"(?!регвыр)"То же, но с отрицанием соответствия
"(?<=регвыр)"Взгляд назад: строка должна соответствовать, если до этого момента соответствует регулярному выражению. Не занимает места в строке, к которой применяется шаблон. Параметр регвыр должен быть фиксированной длины (то есть, без «+» и "*")
"(?То же, но с отрицанием соответствия
"(?P<имя>регвыр)"Выделяет именованную группу с именем имя
"(?P=имя)"Точно соответствует выделенной ранее именованной группе с именем имя
"(?#регвыр)"Комментарий (игнорируется)
"(?(имя)рв1|рв2)"Если группа с номером или именем имя оказалась определена, результатом будет сопоставление с рв1, иначе — c рв2. Часть |рв2 может отсутствовать
"(?флаг)"Задает флаг для всего данного регулярного выражения. Флаги необходимо задавать в начале шаблона

В таблице ниже описаны специальные последовательности, использующие обратную косую черту:

ПоследовательностьЧему соответствует
"\1""\9"Группа с указанным номером. Группы нумеруются, начиная с 1
"\A"Промежуток перед началом всей строки (почти аналогично "^")
"\Z"Промежуток перед концом всей строки (почти аналогично "$")
"\b"Промежуток между символами перед словом или после него
"\B"Наоборот, не соответствует промежутку между символами на границе слова
"\d"Цифра. Аналогично «[0–9]»
"\s"Любой пробельный символ. Аналогично «[\t\n\r\f\v]»
"\S"Любой непробельный символ. Аналогично «[^\t\n\r\f\v]»
"\w"Любая цифра или буква (зависит от флага LOCALE)
"\W"Любой символ, не являющийся цифрой или буквой (зависит от флага LOCALE)

Флаги, используемые с регулярными выражениями:

"(?i)", re.I, re.IGNORECASE

Сопоставление проводится без учета регистра букв.

"(?L)", re.L, re.LOCALE

Влияет на определение буквы в "\w", "\W", "\b", "\B" в зависимости от текущей культурной среды (locale).

"(?m)", re.M, re.MULTILINE

Если этот флаг задан, "^" и "$" соответствуют началу и концу любой строки.

"(?s)", re.S, re.DOTALL

Если задан, "." соответствует также и символу конца строки "\n".

"(?x)", re.X, re.VERBOSE

Если задан, пробельные символы, не экранированные в шаблоне обратной косой чертой, являются незначащими, а все, что расположено после символа "#", — комментарии. Позволяет записывать регулярное выражение в несколько строк для улучшения его читаемости и записи комментариев.

"(?u)", re.U, re.UNICODE

В шаблоне и в строке использован Unicode.

<p>Методы объекта–шаблона</p>
Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных