Pok-3-wyk-Slajd33
Retrakcja(1)
Intuicyjnie rozpoczynamy przetwarzanie od dopasowania cyfry 1 do wzorca pierwszej reguły. Następnie widzimy, że reguła 3 ma we wzorcu „.E” następujące po cyfrze, co może nas prowadzić do utworzenia dłuższego dopasowania. Pozostawiamy więc „na boku” pierwszą regułę i przechodzimy do trzeciej. Dopasowujemy znak „.” a następnie dużą literę „E”. Niestety tu okazuje się, że dalsze dane wejściowe nie dopasują się do tego wzorca. Musimy więc się wycofać i powrócić do pierwszej reguły.
W analogiczny sposób działa mechanizm retrakcji w analizatorach wygenerowanych przez program LEX. Analizator przetwarza wiele wzorców równolegle starając się znaleźć ten najbardziej odpowiedni (czyli najdłuższy). Z czasem wzorce, które są mniej obiecujące są porzucane i wraca się do nich jedynie w przypadku nieudanego dopasowania do wzorca, który mógłby dać dłuższe dopasowanie.
Korzystając z retrakcji analizator dokona dopasowania wejścia do reguły pierwszej i drugiej.