5.6 Ein beliebiges Wort finden, das nicht hinter einem bestimmten Wort steht

Problem

Sie wollen ein beliebiges Wort finden, vor dem nicht direkt das Wort rot steht, wobei Whitespace, Satzzeichen oder anderen Nicht-Wortzeichen dazwischen ignoriert werden.

Lösung

Lookbehind

Mit Lookbehinds können Sie prüfen, ob sich ein bestimmter Text vor einer Position befindet. Dabei wird die Regex-Engine angewiesen, zwischenzeitlich im String rückwärts zu springen und zu prüfen, ob dort etwas gefunden werden kann, das genau an der Position endet, an der Sie das Lookbehind platziert haben. In „2.16 Etwas auf Übereinstimmung prüfen, ohne es dem Gesamtergebnis hinzuzufügen“ finden Sie mehr Informationen zu Lookbehinds.

Die folgenden drei Regexes verwenden negative Lookbehinds, ...

Get Reguläre Ausdrücke Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.