studyklar
IProg · Skript 2 · Abschnitt 8

Reguläre Ausdrücke: Gruppen und Rückverweise

Runde Klammern machen aus mehreren Zeichen eine Einheit, eine Gruppe. Hier steht, was das an einem Muster ändert und wie man den Text einer Gruppe später noch einmal verlangt. Rechts wird jedes Muster an Texten ausprobiert. Mit Weiter geht es Schritt für Schritt voran. Ein Klick auf einen Schritt springt direkt dorthin.

Worum es geht

Skript 02, Folie 36: reguläre Ausdrücke, Gruppierung und Referenzen (Rückverweise).

Ein Quantor wie + wirkt nur auf das eine Zeichen direkt davor. Wie wiederholt man dann „abc“ als Ganzes? Und wie prüft man, ob derselbe Text zweimal vorkommt? Beides lösen runde Klammern.

Aus Skript 02, Folien 31–35: Zeichenklassen […], Alternative |, Metazeichen wie \d und \w, Quantoren {m,n}, *, +, ? und die Anker ^, $, \b.

So gehen wir vor:

  1. Sehen, worauf ein Quantor ohne Klammern wirkt.
  2. Zeichen mit runden Klammern zu einer Gruppe zusammenfassen.
  3. Das Folienbeispiel zerlegen und prüfen.
  4. Eine Alternative in eine Gruppe setzen.
  5. Mit einem Rückverweis den Text einer Gruppe noch einmal verlangen.
  6. Eine Klausurfrage selbst lösen.

Ein Quantor gilt nur einem Zeichen

MusterBedeutung
^abc+$a, b, dann ein oder mehr c

In ^abc+$ steht das + hinter dem c. Es wiederholt also nur das c, nicht „abc“. Das Muster heißt: a, b, dann ein oder mehr c.

Darum passt „abccc“. „abcabc“ passt nicht: Nach dem ersten c kommt ein a, und das Muster erlaubt danach nur weitere c oder das Ende.

Runde Klammern bilden eine Gruppe

MusterBedeutung
^abc+$a, b, dann ein oder mehr c
^(abc)+$„abc“, einmal oder öfter

Runde Klammern fassen Zeichen zu einer Gruppe zusammen. Ein Quantor hinter der Klammer wirkt auf die ganze Gruppe.

^(abc)+$ heißt: „abc“, einmal oder öfter. Jetzt passt „abcabc“, und „abccc“ fällt durch.

Merke: Ohne Klammern wiederholt ein Quantor nur das Zeichen direkt davor. Mit Klammern wiederholt er alles, was in der Klammer steht.
Noch 9 Schritte bis zum Ergebnis
Den ganzen Lösungsweg sehen Studierende und Lehrende der HS KL. Registriere dich mit deiner Adresse @stud.hs-kl.de oder @hs-kl.de, dann geht es hier direkt weiter.

Abbildung 1

Hier erscheinen gleich Muster und Texte, die damit geprüft werden.

LegendeTreffer (gefundenes Stück, unterstrichen)Noch kein Muster: Gruppen und Rückverweise kommen Schritt für Schritt.