Почему регулярки тормозят: бэктрекинг изнутри
Однажды разработчик пишет простое выражение для проверки email. Тесты проходят. Код уходит в продакшен. А потом сервер зависает на 30 секунд при обработке одной строки. Не гипотетически. В 2016 году именно так лёг Stack Overflow. Причина: одна регулярка в валидации. Называется это бэктрекинг - он же катастрофический откат, он же ReDoS.
Смотрите вначале когда вы передаёте паттерн в re.search(): движок не просто "ищет". Он пробует. Берёт позицию в строке, пробует совместить с паттерном - не получилось, сдвигается на символ вправо, пробует снова...