Tutorial Regular Expressions: Die Position einer Zeichenkette

Wie man einfache Zeichenketten sucht, ist jetzt klar, zumeist ist es jedoch so das diese an festen Positionen innerhalb des Suchstrings stehen müssen (eine E-Mail-Adresse endet zum Beispiel  immer mit der Toplevel-Domain). In Regular Expressions gibt es hierfür die sogenannten Anker, die definieren, wo in einem Text das Suchmuster stehen sollte.

Lustigerweise gehört zu diesen Ankern auch der Punkt, der im eigentlichen Sinne keine Positionsangabe ist, sondern ein Synonym für „irgendein Zeichen“.  Da der Punkt nun Teil einer Regular Expressions sein kann, stellt sich natürlich die Frage, wie man jetzt wohl nach einem Punkt sucht. Hierfür muss man diesen mittels des Backslashs „Escapen“, wie man es zum Beispiel von MySQL her gewohnt ist. Demnach sucht ein . nach „irgendeinem Zeichen“ und ein \. nach einem Punkt.

Lustigerweise ist das Circumflex ^, das wir im Prinzip schon als Not für Bereiche kennengelernt haben, auch ein Anker. Ist also von seiner Funktion her doppelt belegt und erfüllt somit verschiedene Aufgaben. Als Anker bedeutet das Circumflex „Suchwort muss starten mit“. Entsprechend bedeutet das Dollar-Zeichen $Suchwort muss enden mit“.

Schwer vorzustellen, also nehmen wir uns wieder unseren Beispielstring:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC1; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Tablet PC 2.0)

Suche nach: [0-9]\.[0-9]\)$
Findet das Tablet PC2.0)runde Klammern sind auch Befehle in Regex und müssen ebenfalls escaped werden (später dazu mehr).

Suche nach: ^Win
Liefert kein Ergebnis, da der zu durchsuchende Text mit Mozilla beginnt, entsprechend:

Suche nach: ^Moz
Liefert als Ergebnis Mozilla

Such nach: .in
Findet Windows und  Win64

Im nächsten Teil des Tutorials beschäftigen wir uns mit Wiederholungen und beliebigen Zeichen.

Ähnliche Beiträge

Tutorial Regular Expressions – eine Einführung Es wird mal wieder an der Zeit eine neue Tutorial-Reihe zu starten und was empfiehlt sich da besser als reguläre Ausdrücke (Regular Expressions) - dem...
Simple Regex Language für PHP Simple Regex Language ist eine sehr interessante Bibliothek für PHP. Regex sind eine Sache die zum einen durchaus komplex werden können, zum anderen a...
Reguläre Ausdrücke visualisieren Reguläre Ausdrücke können zu wahren Ungetümen mutieren. Da hilft es manchmal auch nichts, wenn man diese hervorragend beherrscht. Man verliert auch ab...
Tutorial Amazon Web Services mit PHP – I ... Die Amazon Web Services sind recht nett, wenn man einfach und schnell Content auf seine eigenen Seiten bringen möchte. Dabei geht es noch nicht einmal...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.