Konstrukte für Reguläre Expressions, Reguläre Ausdrücke:
Split Escape Character#
Splitten eines Strings a;b;c\;d in {"a", "b", "c\;d"}:
(?<=[^\\\\]);
XML#
<(?!/)([^>]+)(?<!/)>
Non-Capturing#
Nicht enthaltene Zeichenketten#
In Fällen, in denen Zeichenketten nicht enthalten sein sollen, können in zwei Fälle unterschieden werden:
- Nicht dahinter: Der sogenannte "Zero-Width Negative Lookahead" kann verwendet werden, um etwas zu beschreiben was hinter einer Zeichenkette nicht erscheinen darf. Der Ausdruck (?!X) besagt, dass sich der Ausdruck X hinter dem vorausgehenden Ausdruck befinden darf. Zum Beispiel findet <(?!/) nur <-Zeichen, die nicht von /-Zeichen gefolgt sind.
- Nicht davor: Umgekehrt können mit dem "Zero-Width Negative Lookbehind" Zeichenketten gefunden werden, bei denen sich ein Ausdruck nicht davor beifindet. Der Ausdruck (?<!X) besagt, dass sich der Ausdruck X nicht vor dem darauf folgenden Ausdruck befinden darf. Zum Beispiel findet (?<!/)> nur >-Zeichen, denen kein /-Zeichen vorausgeht.