🐍 В Python 3.15 решили мягко «похоронить» re.match()
re.match() никуда не удаляют, но для нового кода его теперь рекомендуют не использовать.
Причина простая: название функции часто сбивает с толку. re.match() проверяет совпадение только с начала строки, хотя по имени это неочевидно.
В Python 3.15 появился более явный вариант:
re.prefixmatch()
Теперь логика выглядит понятнее:
- re.search() — ищет совпадение в любом месте;
- re.prefixmatch() — только с начала строки;
- re.fullmatch() — вся строка должна совпасть полностью.
re.match() получил статус soft deprecated: он остаётся рабочим, без warning и без планов на удаление, но новый код лучше писать без него.
Проверять старое использование можно через Ruff и правило TID251.
Статья: https://hugovk.dev/blog/2026/soft-deprecating-re-match/
@Python_Community_ru
Post #3295
434

- 👍 1
- 🔥 1