Reguläre Ausdrücke 6: Das Pluszeichen
Regel 6
Der vor dem Pluszeichen stehende Ausdruck muss mindestens einmal vorkommen.
Jetzt werdet ihr wahrscheinlich die anderen Artikel suchen und euch fragen was denn gleich der Unterschied zum Punkt oder zum Fragezeichen ist. Deshalb habe ich eine kleine Tabelle erstellt, die euch die letzten vier Zeichen nochmal übersichtlich erklärt. Die erste Spalte zeigt das entsprechende Zeichen, die zweite die Erklärung. Nach der Erklärung folgt die mathematische Mengenangabe, die manchmal mehr sagt als ein Satz zu erklären versucht:
Zeichen | Bedeutung |
. |
Der voranstehende Ausdruck muss genau einmal vorkommen. ({1} ) |
? |
Der voranstehende Ausdruck muss maximal einmal vorkommen. ({0,1} ) |
* |
Der voranstehende Ausdruck muss mind. nullmal vorkommen. ({0,} ) |
+ |
Der voranstehende Ausdruck muss mind. einmal vorkommen. ({1,} ) |
Die Zeichen unterscheiden sich also in ihren minimalen und maximalen Grenzen. Während bei .
und +
der Ausdruck unbedingt einmal vorkommen muss um ein positives Ergebnis zu erlangen, ist dies bei den anderen beiden Zeichen nicht notwendig.
Nun zurück zum Pluszeichen. Um unser Traumschiff-Beispiel nochmals aufzugreifen, hier das Listing:
tcr@triton ~ $ cat datei tttraumschiff ttraumschiff traumschiff raumschiff tcr@triton ~ $ egrep t+raumschiff datei tttraumschiff ttraumschiff traumschiff tcr@triton ~ $ |
Wenn man sich jetzt die Tabelle anschaut, ist es ganz einfach die Ausgabe nachzuvollziehen. Der Ausdruck darf bei *
wie bei +
beliebig oft vorkommen solang die Minimumgrenze erreicht ist. Beim Sternchen kann das Zeichen auch nullmal vorkommen, beim Pluszeichen nicht. Deshalb wird in der Ausgabe mit Sternchen auch raumschiff
ausgegeben (das „gematchte“ t
kommt nicht mit vor). Bei der Ausgabe mit dem Pluszeichen fehlt diese Zeile jedoch, da t
mindestens einmal vorkommen muss.
Das war das Pluszeichen. Ich hoffe die Tabelle hat die letzten Zeichen etwas näher gebracht und bei Fragen, wie immer, könnt ihr einfach einen Kommentar hinterlassen. Ich freue mich auf eure Beiträge.