Reguläre Ausdrücke in Perl

aus ZUM-Wiki, dem Wiki für Lehr- und Lerninhalte auf ZUM.de
Wechseln zu: Navigation, Suche

Druckversion

Farm-Fresh brain.png   Vorwissen

Bevor du hier loslegst, solltest du die folgenden Bausteine zuvor durchgearbeitet haben:

Farm-Fresh pencil add.png   Aufgabe

Gib einen regulären Ausdruck an, ...

  1. ... mit dessen Hilfe man Ortsangaben der Form 'PLZ Ortsname' filtern kann. Es sollen auch exotische Ortsnamen erkannt werden (aber keine unmöglichen!).
  2. ... der Preisangaben erkennt.
  3. ... mit dessen Hilfe man IP-Adressen erkennen kann.
  4. ... der Links in HTML-Seiten erkennt. Links haben die folgende Form: <a href=“http://url“>Linktext</a>
  5. ... der URLs in Texten erkennt und durch einen entsprechenden HTML-Ausdruck (siehe 4) ersetzt.
  6. ... mit dem man Datumsangaben der Form Tag.Monat.Jahr finden kann, wenn Tag und Monat jeweils durch ein- oder zweistellige und Jahr durch eine zwei- oder vierstellige Ziffer gegeben wird. Es sollen möglichst nur sinnvolle Datumsangaben gefunden werden, also nicht '32.0.17'. Es sollen nur Daten aus den Jahren ab 1990 gesucht werden.

Hilfe zur Kommandozeile

Die Zeile

perl -ne "print $_ if /aba/" test.txt

druckt alle Zeilen der Datei test.txt aus, die den Text “aba” enthalten. Eine Alternative ist

perl -ne "if (/aba/) {print}" test.txt

Die Zeile

perl -pe "s/(aa+)/b$1b/g" test.txt

ersetzt in allen Zeilen der Datei test.txt eine Reihe von a’s (mindestens zwei a’s) durch ba….ab. $1 bezieht sich dabei auf den Text, der in der ersten Klammer der regulären Ausdrucks erkannt wurde, $2 auf den Text in der zweiten Klammer usw.

Weitere Links