| |
| * Link führt ins Internet |
|
| |
Reguläre Ausdrücke für Zeichenketten
|
|
Reguläre Ausdrücke können auch zum Suchen von Zeichenfolgen verwendet werden. Hierbei können so genannte Gruppierungsoperatoren (Platzhalter, Wildcards) zu Platzhaltersuchen verwendet werden. Des Weiteren ist die Suche nach Zeichenfolgen, die am Anfang oder Ende eines Worts oder einer Zeile stehen, möglich.
Wenn Sie nach einer bestimmten Zeichenkette suchen wollen, geben Sie die Zeichenkette zwischen den beiden Anführungszeichen des regulären Ausdrucks an.
Das folgende Beispiel zeigt, dass mit dem verwendeten Suchmuster sämtliche Zeichenfolgen gefunden werden, die das in dem regulären Ausdruck vorgegebene Suchmuster als Teilstring enthalten.
<?php
// Array
$texte = array(
"Ich bin ein Mann",
"Ein Mann steht in der Tür",
"Ein Auto steht vor dem Haus",
"Die Mannen von Hektor"
);
$reg_muster = "Mann";
foreach ($texte as $eintrag) {
if (ereg($reg_muster,$eintrag)) {
echo "Text: " . $eintrag . " enthält das Suchmuster " . $reg_muster . "<br>";
}
}
?>
|
Ausgabe
Text: Ich bin ein Mann enthält das Suchmuster Mann
Text: Ein Mann steht in der Tür enthält das Suchmuster Mann
Text: Die Mannen von Hektor enthält das Suchmuster Mann
|
| Hinweis: Auch in Mannen steckt das Suchmuster Mann und wird daher erkannt! |
Einsatz des Fragezeichen
Das Fragezeichen ? bedeutet in einem regulären Ausdruck, dass das Zeichen vor dem Fragezeichen Bestandteil der gefundenen Zeichenfolge sein darf, dass aber auch Zeichenfolgen ohne diese Zeichen gefunden werden.
| Regulärer Ausdruck | Bedeutung |
| "Hek?" | Findet Zeichenfolgen, wie Hektar, Hektor, etc. |
| "Ma?" | Findet Zeichenfolgen, wie Mama, Mann, Mannschaft, etc. |
Einsatz des Punkt
Der Punkt . steht für genau ein beliebiges Zeichen an der betreffenden Stelle.
| Regulärer Ausdruck | Bedeutung |
| "Man." | Findet Zeichenfolgen, wie Mann, Mani, Manu, Mannschaft, etc. |
| "Hekt.r" | Findet Zeichenfolgen, wie Hektor, Hektar, etc. |
| "Fr.ed.n" | Findet Zeichenfolgen, wie Frieden, Friedensmission, etc. |
Einsatz des Pluszeichen
Das Pluszeichen + bedeutet: eine oder mehrere Wiederholungen des Zeichens, das vor dem Pluszeichen steht.
| Regulärer Ausdruck | Bedeutung |
| "a+" | Findet Zeichenfolgen die a, aa, aaaa oder beliebig viele a enthalten. |
| "Au+to" | Findet Zeichenfolgen, wie Auto, Auuah, etc. |
Einsatz des Sternzeichen
Der Sternzeichen * bedeutet in regulären Ausdrücken, dass keine, eine oder mehrere Wiederholungen des Zeichens, das vor dem Sternzeichen steht, erlaubt sind.
| Regulärer Ausdruck | Bedeutung |
| "Ba*" | Findet Zeichenfolgen, wie Baum, Baam, Band, BND, etc. |
Wenn Sie vor dem Sternzeichen einen Punkt notieren, der ja für ein beliebiges Zeichen steht, erzeugen Sie, wie in dem folgenden Beispiel, einen Platzhalter mit einer beliebigen Anzahl von Zeichen.
| Regulärer Ausdruck | Bedeutung |
| "Li.*um" | Findet Zeichenfolgen, wie Lithum, Liittthum, etc. |
Einsatz von geschweiften Klammern
Eine oder zwei in geschweiften Klammern eingeschlossenen Zahlen {n} oder {n,m} stehen für n Widerholungen des Zeichens vor der geschweiften Klammer an der betreffenden Stelle.
Werden zwei Zahlen angegeben bedeutet dies zwischen n und m Widerholungen des Zeichens vor der geschweiften Klammer. Das Punktzeichen kann vor der geschweiften Klammer ebenfalls verwendet werden, was dann bedeutet, dass so viele beliebige Zeichen wie innerhalb der geschweiften Klammer angegeben auftreten dürfen.
| Regulärer Ausdruck | Bedeutung |
| "a{10,20}" | Findet zwischen 10 und 20 a in Folge. |
| "a{10}" oder "a{10,}" | Findet 10 und mehr a in Folge. |
| "Li.{3}t" | Findet Zeichenfolge, wie Liiiithum, Liooothum, etc. |
Einsatz von Dach- und Dollarzeichen
Sie können nach Zeichenketten suchen, die nur dann gefunden werden, wenn sie am Anfang oder am Ende eines Wortes vorkommen. Auch die Umkehrung davon ist möglich:
. Sie können nach Zeichenketten suchen, die nur dann gefunden werden, wenn sie nicht am Anfang oder am Ende eines Wortes vorkommen.
. Sie können Zeichenketten suchen, die nur dann gefunden werden, wenn sie am Anfang oder am Ende einer Zeile im zu durchsuchenden Bereich vorkommen.
Mit dem Dachzeichen ^ am Beginn des Suchausdrucks wird die Zeichenkette nur gefunden, wenn sie am Anfang der Zeile steht.
Mit dem Dollarzeichen $ am Ende des Suchausdrucks wird die Zeichenkette nur gefunden, wenn sie am Ende der Zeile steht.
| Regulärer Ausdruck | Bedeutung |
| "^tausend" | Findet die Zeichenfolge tausend nur am Anfang eines zu durchsuchenden Bereichs. |
| "tausend$" | Findet die Zeichenfolge tausend nur am Ende eines zu durchsuchenden Bereichs. |
|
|
|
|
|
|
|