Backtracking (traduzindo para pt-br, retrocesso) é o recurso essencial da engine NFA (do inglês Nondeterministic Finite Automaton, que traduzido é Autômato Finito Não-Determinístico) usado em expressões regulares que utilizam quantificadores, isto é, *, *?, +, .+?, {n,m} e {n,m}?.
Pois o seu papel é retroceder quando uma tentativa de combinação (match) falhar, recuando assim o ponteiro para novas tentativas de combinações.
Para ilustrar o que foi dito acima, veja como funciona passo à passo em: http://www.softec.st/en/OpenSource/DevelopersCorner/RegularExpressions/BacktrackingInRegards.html
Referência
Arquivado como:Regex