re.match и re.search — это функции из модуля re, используемые для поиска совпадений в строке по регулярному выражению.
Основное отличие заключается в том, где именно они начинают искать:
re.match проверяет соответствие только в начале строки.re.search сканирует всю строку и возвращает первое найденное совпадение.Если совпадение найдено, обе функции возвращают объект соответствия (match object). В противном случае возвращают None.
Пример:
python
Сравнение:
| Признак | re.match(pattern, string) | re.search(pattern, string) |
|---|---|---|
| Область поиска | Только начало строки | Вся строка |
| Возвращает | Объект соответствия или None | Объект соответствия или None |
| Применимость | Проверка префикса строки | Поиск подстроки по шаблону |
Обе функции поддерживают флаги (flags) для изменения поведения поиска, например, re.IGNORECASE.