Reguläre Ausdrücke sind ein außerordentlich nützliches Werkzeug zur Identifikation von Zeichenketten. Es gibt jedoch Situationen, in denen herkömmliche reguläre Ausdrücke nicht ausreichend sind. In diesen Fällen kommen ‚Lookahead‘ und ‚Lookbehind‘ zum Einsatz. Diese Konzepte werden im Folgenden näher erläutert und jeweils mit einem Beispiel veranschaulicht:
Lookahead
Der Ausdruck test folgt unmittelbar der aktuellen Position:
(?=test)
Lookbehind
Der Ausdruck test steht unmittelbar vor der aktuellen Position:
(?<=test)
Negativer Lookahead
Der Ausdruck test folgt nicht unmittelbar der aktuellen Position:
(?!test)
Negativer Lookbehind
Der Ausdruck test steht nicht unmittelbar vor der aktuellen Position:
(?<!test)