Erläuterungen
Schwierigkeitsgrad der Übungen:
... sehr einfach ... ein bisschen schwieriger
Lösungen:

Die Links zu den Lösungen sind per Link-Bild realisiert. Im Gegensatz zu den üblichen Wikibooks-Gepflogenheiten gelangen Sie durch einen Klick auf das Symbol zur entsprechenden Lösungsseite.


Übungen

Gegeben sei die Datei pupil folgenden Inhalts:

Name            Klasse  Deutsch Mathematik Physik
-------------------------------------------------------
Hans            1a      1       2          3 
Frieda          2b      3       2          2
Helga           1b      2       1          1
Michael         1a      2       1          3
Olga            2a      3       1          2
Karl-Hans       3c      3       4          2

Simple reguläre Ausdrücke

Aufgabe
A10 Gegeben sei die Anweisung awk '/1a/' pupil. Welche Datensätze werden durch Ausführung dieser Anweisung ausgegeben?
A20 Gegeben sei die Anweisung awk '$3~/2/ {print $1}' pupil. Welche Daten werden durch Ausführung dieser Anweisung ausgegeben?
A30 Erstellen Sie ein awk-Skript, welches alle Schülerdatensätze aus der Textdatei pupil auf der Standardausgabe listet, in deren Namensspalte die Zeichenkette Hans vorkommt.

Beliebige Zeichen

Aufgabe
A40 Gegeben sei die Datei pupil. Erstellen Sie ein awk-Skript, das die Datensätze aller Schüler mit einem Namen länger als 5 Zeichen aus dieser Datei auf der Standardausgabe listet.

Anker

Aufgabe
A50 Gegeben sei die Anweisung awk '$1~/a$/' pupil. Welche Datensätze werden durch Ausführung dieser Anweisung ausgegeben?
A60 Erstellen Sie ein awk-Skript, das alle Datensätze der Datei pupil mit dem Schülernamen Hans ausgibt.

Zeichenklassen

Aufgabe
A70 Gegeben sei die Anweisung awk '/^[A-H]/' pupil. Welche Datensätze werden durch Ausführung dieser Anweisung ausgegeben?
A75 Gegeben sei die Anweisung awk '/^[^A-H]/' pupil. Welche Datensätze werden durch Ausführung dieser Anweisung ausgegeben?
A80 Erstellen Sie ein awk-Skript, das entsprechende Datensätze der Datei pupil unter folgender Voraussetzung ausgibt: Das zweite Zeichen im Datensatz muss der Buchstabe a oder e sein.

Alternativen

Aufgabe
A90 Gegeben sei die Anweisung awk '$1~/Hans|Olga/' pupil. Welche Datensätze werden durch Ausführung dieser Anweisung ausgegeben?
A100 Erstellen Sie ein awk-Skript, das entsprechende Datensätze der Datei pupil unter folgender Voraussetzung ausgibt: Die Schülernamen beginnen mit Ha, He oder Ka.

Gruppierung

Aufgabe
A110 Liefern die Anweisungen awk '$1~/^(Ha|Ka).../' pupil und awk '$1~/^Ha|Ka.../' pupil das gleiche Ergebnis?

Wiederholungen

Aufgabe
A120 Erstellen Sie ein awk-Skript, das Datensätze der Datei pupil unter folgender Voraussetzung ausgibt: Der Schülername beginnt mit H und endet mit s.
A130 Gegeben ist die Anweisung awk '/^Ha{2,}llo$/'. Nach Start dieser Anweisung werden über die Standardeingabe die Strings
  • Hallo
  • Haaallodi
  • Haaaallo

eingegeben. Welche davon werden über das awk-Skript, d.h nicht nur als Echo, an die Standardausgabe weitergeleitet?

A140 Erstellen Sie ein awk-Skript, das Datensätze der Datei pupil unter folgender Voraussetzung ausgibt: Der Schülername sei Zeichen lang mit (also Namen die 2, 4, 6, 8, ... Zeichen lang sind).

Weitere Aufgaben

Aufgabe
W10 Geben sie einen regulären Ausdruck an, der auf alle Strings passt, die aus mehr als 2 Zeichen bestehen, mit einem Großbuchstaben beginnen und mit einer Ziffer enden.
W20 Geben sie einen regulären Ausdruck an, der Gleitkommazahlen repräsentiert. Beispiele für Gleitkommazahlen:
  • -2
  • +3.67801
  • 56.
  • 3.1e34
  • -569E-4
  • .65E+9

Eingaben, auf die der reguläre Ausdruck nicht zutreffen darf, sind bspw.:

  • abc
  • 5ab
  • ab2
  • 1a2
  • .
  • (leere Eingabe)


W30 Geben Sie einen regulären Ausdruck für eine Zeichenkette bestehend aus den Buchstaben W und F an, bei der sowohl die Summe der Buchstaben W, als auch die der Buchstaben F eine gerade Zahl ergibt. Beispiele:
  • WWFF
  • FWFW
  • WFFFFW
  • WWWFFWFFWWFWWF
  • WFFWFWW (Summe der Buchstaben F ist ungerade)


This article is issued from Wikibooks. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.