In diesem Artikel geht es um “reguläre Ausdrücke“. Statt hier jetzt viele Worte für eine Beschreibung zu verlieren was sich hinter diesem Begriff verbirgt, schauen wir besser direkt einige Praxisbeispiele an…

Zirkumflex und Dollarzeichen:

Für die folgenden Experimente erzeugen wir eine Datei mit dem Namen “story.txt“ mit folgendem Text:

Zeile 1 = Dornröschen war eine Prinzessin.

Zeile 2 = Hänsel war der Bruder von Gretel.

Jetzt öffnen wir ein Terminal und nutzen folgenden Befehl:

  • grep ^Dornröschen story.txt

Das Zeichen Zirkumflex findet sich übrigens links neben der Eins und danach bitte auch einmal auf die Leertaste hauen (oder sanft drücken geht auch 🙂 Der reguläre Ausdruck den wir hier genutzt haben, passt nur am Satzanfang. In unserer Datei steht “Dornröschen“ ja auch am Anfang. Suchen wir doch jetzt mal nach “Gretel“…

  • grep ^Gretel story.txt

Anders als beim ersten Beispiel wird jetzt nichts ausgegeben. Zirkumflex sucht also immer am Satzanfang nach einem Wort. Per Dollarzeichen wird am Satzende gesucht.

  • grep Gretel $ story.txt

Obwohl in meinen Experimenten im Terminal erst eine Fehlermeldung ausgegeben wird (Datei oder Verzeichnis nicht gefunden) wird die richtige Zeile dann doch gefunden und das Suchwort (hier also Gretel) hervorgehoben.

Sternchen für den regulären Ausdruck:

Nun ergänzen wir in unserer Datei wie folgt:

Zeile 3 = Gretel mag gerne Lebkuchen.

Im Terminal suchen wir jetzt nochmal nach Gretel mit folgendem Befehl:

  • grep Gretel* story.txt

Nun werden beide Zeilen die das Wort Gretel enthalten angezeigt und genau so sollte es sein.

Wortsuche in Dateien:

Natürlich kann grep auch für eine Wortsuche in der Datei genutzt werden – egal wo das Wort steht.

  • grep Hänsel story.txt
  • grep war story.txt

Das zweite Beispiel findet die Zeilen in denen das Wort “war“ vorkommt. Die Suche ohne Dateinamen führt dazu, dass sich grep auf die Standard-Eingabe bezieht und das ist im Normalfall die Tastatur. Das Suchwort müsste also eingetippt werden und dann würde es grep auch finden.

Zurück zur Eingabeaufforderung:

Nachdem letzten Experiment bleibt man im grep Programm hängen. Zurück zur Eingabeaufforderung geht es mit der Tastenkombination “Steuerung“ und “C“.

Wortsuche in Dateien – Teil 2:

  • grep ‚\Dornröschen war‘ story.txt

So geht es auch. Gefunden wird jetzt nicht der Satz “Dornröschen ist eine Prinzessin“. Wer diesen Satz in die Textdatei einfügt wird es merken. Es wird nur der Satz mit “Dornröschen war“ gefunden und angezeigt… Für einen ersten kleinen Einstieg in das Themenfeld Reguläre Ausdrücke soll es das gewesen sein. Alles weitere (vielleicht) in einem späteren Artikel.

Linux Gruppe Peine:

Wer sich für das Betriebssystem Linux und Open Source Hardware und Software interessiert ist in der Linux Gruppe Peine genau richtig. Wenn Du Lust hast mitzumachen, dann melde dich einfach beim Fuhselab.

Die Linux Gruppe Peine trifft sich Donnerstags von 18:00 Uhr bis 21:00 Uhr. Die Teilnehmerzahl ist begrenzt und deshalb bitte vorher per Kontaktformular oder Mail an info@fuhselab.de melden. Der Veranstaltungsort wird kurzfristig festgelegt und den Teilnehmerinnen und Teilnehmern per E-Mail mitgeteilt.

Das Angebot “Linux Gruppe Peine“ kann für einen Jahresbeitrag von 60,- Euro genutzt werden. Für einen Beitrag von 20,- Euro pro Teilnehmer können die Workshops genutzt werden. Materialkosten werden projektabhängig zusätzlich erhoben.

Von Torsten