re (регулярные выражения)
Инструменты для работы с регулярными выражениями. Использование регулярных выражений в Python.
Регулярное выражение (re, regexp) позволяет описать некоторое множество строк при помощи шаблона для дальнейшего определения того, входит ли какая-либо строка в этом множество. Данный модуль предоставляет инструменты для работы с регулярными выражениями, подобные тем, которые можно обнаружить в языке Perl.
Как шаблоны так и строки, по которым производится поиск, могут являться и строками Юникод (str) и 8-битными строками (
В регулярных выражениях обратный слеш (
Дабы избежать необходимости экранирования, в качестве шаблонов регулярных выражений можно использовать сырые строки Питона (строки с префиксом
Многие инструменты, предлагаемые модулем, доступны как в виде функций, так и в виде методов объектов скомпилированных регулярных выражений. Функции предлагают короткий путь (при их использовании нет необходимости компилировать объект регулярного выражения), жертвуя при этом параметрами для более тонкой настройки.
Как шаблоны так и строки, по которым производится поиск, могут являться и строками Юникод (str) и 8-битными строками (
bytes
). Внимание
Смешивать строки и байты не следует: нельзя сличить Юникод-строку с байтовым шаблоном и наоборот; при замене и строка, и шаблон, и заменитель должны быть одного типа.
В регулярных выражениях обратный слеш (
\
) используется для обозначения специальных форм или спецсимволов, что конфликтует со сценариями использования его в Питоне. Например, для обозначения регулярного выражения \\
потребуется указать строковый литерал шаблона \\\\
, потому что обратный слеш в литерале потребует экранирования.Дабы избежать необходимости экранирования, в качестве шаблонов регулярных выражений можно использовать сырые строки Питона (строки с префиксом
r
). Например: r'\n'
— это строка из двух символов (\
и n
), а '\n'
— это строка из одного символа, обозначающего переход на новую строку. Шаблоны регулярных выражений в Питоне часто используют сырые строки.Многие инструменты, предлагаемые модулем, доступны как в виде функций, так и в виде методов объектов скомпилированных регулярных выражений. Функции предлагают короткий путь (при их использовании нет необходимости компилировать объект регулярного выражения), жертвуя при этом параметрами для более тонкой настройки.
На заметку
Попрактиковаться и отладить регулярные выражения можно на сайте https://regex101.com
На заметку
Существует сторонний модуль regex с совместимым программным интерфейсом, предлагающий расширенную функциональность и более совершенную поддержку Юникода.
Синонимы поиска: re (регулярные выражения), regexp, регулярка, регулярки
Статьи раздела
re.compile | Компилирует объект регулярного выражения.для последующего использован… |
re.findall | Ищет в строке непересекающиеся вхождения шаблона. |
re.fullmatch | Определяет соответствие строки указанному шаблону. |
re.match | Ищет соответствие шаблону в начале строки. |
re.search | Ищет соответствие шаблону в любом месте строки. |
re.split | Разбивает строку, используя регулярное выражение. |
re.sub | Возвращает новую строку, полученную в результате замены по указанному… |
Синтаксис регулярных выражений | Здесь приводится базовая информация о синтаксисе регулярных выражений. |
В разделе «Пакеты и модули»:
array
collections
contextlib
datetime
functools
itertools
keyword (ключевые слова)
math
random
string
На заметку
Зарегистрированные пользователи могут получать еженедельный дайджест обновлений на сайте.