Функцията match() само проверява дали този РИ пасва с началото на символния низ, а search() последователно обхожда символния низ, докато намери съвпадение. Важно е винаги да имате предвид това разграничение. Запомнете, че match() само ще докладва за успешно пасване, започващо от 0; ако пасването би започнало от някоя следваща позиция, match() няма да докладва за това.
>>> print re.match('super', 'superstition').span()
(0, 5)
>>> print re.match('super', 'insuperable')
None
>>> print re.search('super', 'superstition').span()
(0, 5)
>>> print re.search('super', 'insuperable').span()
(2, 7)
Добавянето на .* тушира тази оптимизация и изисква претърсване до края на символния низ и после връщане назад, докато се открие съвпадение за останалата част от РИ. Вместо това използвайте re.search().