Der Backslash

Soll im Suchmuster ein Metazeichen als normales Zeichen verwendet werden (z.B. der Punkt als Satzzeichen anstatt der Punkt als Metazeichen), so muß es mit einem vorangestellten Backslash maskiert werden. Der Backslash (in seiner Funktion als normales Zeichen) muß auch maskiert werden.

Daneben gibt es eine Reihe von allgemeinen Ausdrücken, die mit dem Backslash eingeleitet werden.

Gruppen von Zeichen beschreiben

Für einige Ausdrücke, die normalerweise als Zeichenklasse angegeben werden, existieren Kurzschreibweisen, die durch einen Backslash eingeleitet werden.

Alle Ziffern

Die Angabe \d (engl. digit ⇒ Ziffer) steht für alle Dezimalziffern, ist also eine Kurzschreibweise für die Zeichenklasse [0-9] die ebenfalls auf alle Ziffern von null bis neun zutrifft.

Wird das \D groß geschrieben, so kehrt sich seine Bedeutung um (das gilt übrigens für alle folgenden Kurzschreibweisen). \D steht also für alle Zeichen außer Ziffern, das entspricht der Angabe der Zeichenklasse [^0-9], die alle Ziffern ausschließt.

Das Reguläre Ausdruck #\d\D\d# steht also für eine Ziffer, gefolgt von einer Nicht-Ziffer, die wiederum von einer Ziffer gefolgt wird.

Alle Leerzeichen

Die Angabe \s (engl. space ⇒ Leerzeichen) steht für jegliche Art von Leerzeichen, seien es einfache Leerzeichen, Zeilenumbrüche oder Tabulatoren. Äquivalent steht ein groß geschriebenes \S für jedes Zeichen, das kein Leerzeichen ist.

Der Reguläre Ausdruck #\d\s\d# steht also für eine Ziffer, gefolgt von einem beliebigen Leerzeichen, das wiederum von einer Ziffer gefolgt wird. Dabei ist es egal, ob das Leerzeichen ein einfaches Leerzeichen ist, oder aber ein Zeilenumbruch oder ein Tabulator-Zeichen.

Alle Wortzeichen

Die Angabe \w (engl. word ⇒ Wort) steht für alle Wortzeichen, also alle Buchstaben, Ziffern und Unterstriche, was gleichbedeutend mit der Zeichenklasse [a-zA-Z0-9_] ist.

Auch hier gilt: Wird das \W groß geschrieben, kehrt sich seine Bedeutung um. \W steht also für alle Zeichen außer den Wortzeichen, was der Zeichenklasse [^a-zA-Z0-9_] entspricht.

Der Reguläre Ausdruck #\w\W\w# steht also für ein beliebiges Wortzeichen, gefolgt von einem Zeichen, das kein Wortzeichen ist, wiederum gefolgt von einem weiteren Wortzeichzen.

Einfache Assertions

Assertions (engl. to assert ⇒ behaupten) sind Zeichen im Suchmuster, die eine bestimmte Aussage treffen, dabei aber keineeigentliche Entsprechung im zu durchsuchenden Text haben.

Zu den einfachen Assertions gehören auch die Metazeichen Accent Zirkumflex und das Dollarzeichen, die Beginn und Ende eines Textes festlegen, im zu durchsuchenden Text aber keinen Platz belegen.

Daneben gibt es noch ein paar wesentlich komplexere Assertions, die deswegen auch in einem eigenen Kapitel behandelt werden.

Wortgrenzen

Durch die Angabe \b kann man festlegen, die sich an der jeweiligen Stelle eine Wortgrenze befindet, also ein Übergang von einem Wortzeichen zu einem Nicht-Wortzeichen oder umgekehrt.

Der Reguläre Ausdruck /huhn\b/ findet die Textstelle huhn in das huhn ist rund aber nicht in das huhnschen ist rund.

Auch hier läßt sich die Bedeutung umkehren, \B steht also für keine Wortgrenze.

Darstellung nicht sichtbarer Zeichen

Mit dem Backslash lassen sich außerdem nicht-sichtbare Zeichen mittels ihres Zeichencodes darstellen. So kann man mittels \n ein Zeilenumbruch bzw. mittels \r\n ein Wagenrücklauf und ein Zeilenumbruch darstellen.

Auch Tabulatoren können mittels \t dargestellt werden.

Es lassen sich noch jede Menge weitere Zeichen darstellen, ausführliche Informationen dazu finden sich wie immer im PHP-Manual.

Verwandte Themen
Kapitelnavigation