Mustersuche in OpenOffice
Durchsuchen langer Texte
Es kommt des Öfteren vor, dass man bestimmte Zeichenketten in einem langen Text suchen möchte. Textverarbeitungsprogramme stellen in der Regel spezielle Suchfunktionen für diesen Zweck bereit.
Die
RFC 5322
ist ein recht langer Text, in dem der Aufbau einer E-Mail spezifiziert wird.
Dieser Text soll nach bestimmten Zeichenmustern durchsucht werden.
Wir laden den Text hierzu in das Textverarbeitungsprogramm, das zum Office-Paket
OpenOffice
gehört.
Wenn wir den Text jetzt nach dem Muster RFC
durchsuchen wollen, dann können wir
hierzu die Menupunkte [Bearbeiten] [Suchen und Ersetzen] aufrufen und das Suchmuster eingeben.
Soweit ist die Sache ganz einfach. Schwieriger wird es, wenn das Suchmuster die Gestalt RFC...
haben soll,
wobei die Punkte hier für Ziffern von 0 bis 9 stehen. Ein mögliches Suchergebnis wäre z.B. RFC0822
.
Das Textverarbeitungsprogramm von OpenOffice erlaubt auch eine Suche mit Hilfe regulärer Ausdrücke.
Die folgende Abbildung zeigt, wie man ein Suchmuster mit einem regulären Ausdruck festlegt.
Aufgabe 1
Besorge dir die RFC 5322 und teste die oben gezeigten Suchoperationen.
Aufgabe 2
Reguläre Ausdrücke enthalten neben Zeichen, die in den gesuchten Zeichenfolgen vorkommen können, auch
sogenannte Metazeichen. Im regulären Ausdruck RFC[0-9]+
sind dies die Zeichen [
,
]
, -
und +
. Weitere Metazeichen, die in regulären Ausdrücken vokommen können, sind
die Zeichen *
, ?
, |
, \
, (
und )
. Ziel dieser Aufgabe ist es,
experimentell die Bedeutung der Metazeichen herauszufinden.
Benutze die folgenden regulären Ausdrücke als Suchmuster und lasse sie von OpenOffice beim Text RFC 5322 auswerten. Beschreibe jeweils, wonach gesucht wird.
- 0
- 0+
- 00+
- 00*
- [0-9]
- [1-9](\.)
- ([1-9](\.))+
- ([1-9ABC](\.))+
- [1-9](\.)?[1-9]
- (From:)|(To:)
Denke dir selbst weitere Suchmuster aus, um die Bedeutung der Metazeichen zu erschließen. Du kannst auch die Hilfe von OpenOffice zu Rate ziehen.
Aufgabe 3
Entwickle einen regulären Ausdruck, mit dem man alle in der RFC 5322 vorkommenden E-Mail-Adressen als Suchergebnis geliefert bekommt.