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
!!Nur Opening-Tags
{{{
<(?!/)([^>]+)(?<!/)>
}}}

!!!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.