Регулярные выражения (regex)*

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

  • Инструмент для работы с текстом

  • Позволяют искать, извлекать и манипулировать текстовыми данными на основе заданных шаблонов

  • В Python регулярные выражения реализованы в модуле 're'

Вот несколько основных понятий и примеров использования регулярных выражений:

  1. Символы и метасимволы (символы имеющие специальное значение):

  • .: Соответствует любому символу, кроме новой строки.

  • *: Соответствует нулю или более повторениям предыдущего символа.

  • +: Соответствует одному или более повторениям предыдущего символа.

  • ?: Соответствует нулю или одному повторению предыдущего символа.

  • []: Символьный класс, соответствует любому из перечисленных символов. Например, [aeiou] соответствует любой гласной букве.

  • [^]: Инвертированный символьный класс, соответствует любому символу, который не находится в перечисленных скобках.

  • |: ИЛИ, соответствует одному из двух выражений. Например, cat|dog соответствует "cat" или "dog".

  1. Специальные последовательности:

  • \d: Соответствует любой цифре (эквивалентно [0-9]).

  • \D: Соответствует любому символу, который не является цифрой.

  • \w: Соответствует любой букве или цифре (эквивалентно [a-zA-Z0-9]).

  • \W: Соответствует любому символу, который не является буквой или цифрой.

  • \s: Соответствует любому пробельному символу (пробел, табуляция, новая строка).

  • \S: Соответствует любому символу, который не является пробельным.

  1. Группировка и квантификация (поиск последовательностей):

  • (): Группирует выражение.

  • {n}: Соответствует ровно n повторениям предыдущего символа.

  • {n, m}: Соответствует от n до m повторений предыдущего символа.

  • {n,}: Соответствует n или более повторениям предыдущего символа.

  • ^: Соответствует началу строки.

  • $: Соответствует концу строки.


  • Примеры использования:

Практика

  • Повторите примеры из урока, проанализируйте результат

Last updated