import re re.compile(pattern, flags=0)
Функция compile()
модуля re
компилирует шаблон регулярного выражения pattern
в объект регулярного выражения, который может быть использован для поиска совпадений с использованием методов Match.match()
, Match.search()
и других способов.
Поведение регулярного выражения можно изменить, указав значение флага flags
. Значения можно комбинировать с использованием побитового оператора ИЛИ - '|'
.
prog = re.compile(pattern) result = prog.match(string) # эквивалентно result = re.match(pattern, string)
Использование re.compile()
и сохранение полученного объекта регулярного выражения для повторного использования более эффективно, когда выражение будет использоваться несколько раз в одной программе.
Заметка Скомпилированные версии последних шаблонов pattern
, передаваемых в re.compile()
и аргумент pattern
функции уровня модуля кэшируются, поэтому программам, которые используют только несколько регулярных выражений одновременно, не нужно беспокоиться о компиляции регулярных выражений.
>>> import re >>> prog = re.compile(r'(?i)[а-я]+') >>> print(prog) # re.compile('(?i)[а-я]+', re.IGNORECASE)