/
/
·
·
/
/
·
·
  • Einführung
  • Die Idee in einem Satz
  • Die induktive Definition
  • Die beschriebene Sprache L(r)
  • Operator-Präzedenz
  • Der Satz von Kleene
  • Von Regex zu NFA: Thompson-Konstruktion
  • Theoretische vs. praktische reguläre Ausdrücke
  • Klausur-Faustregeln
  • Häufige Stolpersteine
ThemenSoftwaretechnikReguläre Ausdrücke und Sprachen: Syntax, Satz von Kleene (Informatik)
Softwaretechnik·4Lerneinheiten·19min·Stand17.07.2026

Reguläre Ausdrücke und Sprachen: Syntax, Satz von Kleene (Informatik).

Reguläre Ausdrücke und Sprachen

Wie beschreibt man eine ganze (unendliche) Menge von Wörtern mit einer kurzen Formel? Mit einem regulären Ausdruck. Er ist die dritte, kompakteste Beschreibung regulärer Sprachen, neben DFA und NFA. Klausurpflicht in 8/8 Theo-Inf-Modulen, oft als Umwandlung Regex ↔ Automat.

Ein regulärer Ausdruck beschreibt eine reguläre Sprache durch drei Operationen: Hintereinanderhängen (Konkatenation), Auswahl (Alternative) und Wiederholung (Kleene-Stern).

Reguläre Ausdrücke über einem Alphabet Σ sind induktiv definiert:

Basis:

  • ∅ beschreibt die leere Sprache (kein Wort).
  • ε beschreibt die Sprache {ε} (nur das leere Wort).
  • jedes a ∈ Σ beschreibt die Sprache {a}.

Induktion (wenn r und s reguläre Ausdrücke sind):

  • r·s (Konkatenation): erst r, dann s.
  • r | s (Alternative, oft r + s): r oder s.
  • r* (Kleene-Stern): null oder mehr Wiederholungen von r.
Ausdruckbeschriebene Sprache
a·b{ab}
ab
a*{ε, a, aa, aaa, ...}
(ab)*
(ab)*ab

Stern (*) bindet am stärksten, dann Konkatenation, dann Alternative (|).

Beispiel: a|b* bedeutet a | (b*), nicht (a|b)*. Klammern setzen, wenn etwas anderes gemeint ist.

Eine Sprache ist genau dann regulär, wenn sie durch einen regulären Ausdruck beschrieben werden kann, genau dann, wenn sie von einem endlichen Automaten erkannt wird.

Regulärer Ausdruck, DFA und NFA sind also drei gleichwertige Beschreibungen derselben Sprachklasse. Man kann jede in jede umwandeln.

Die Thompson-Konstruktion baut aus einem regulären Ausdruck systematisch einen ε-NFA: für jede Basis und jede Operation (Konkatenation, Alternative, Stern) gibt es ein kleines Automaten-Bauteil, die man zusammensteckt. So zeigt man eine Richtung des Satzes von Kleene.

In der Theorie gibt es nur ∅, ε, Symbole, Konkatenation, | und *. Praktische Regex-Bibliotheken (in Programmiersprachen) haben Zusätze wie +, ?, Zeichenklassen [a-z] und Rückwärtsreferenzen. Achtung: Rückwärtsreferenzen machen praktische Regex MÄCHTIGER als reguläre Sprachen, das ist dann keine reine Theorie mehr.

1. 3 Operationen: Konkatenation, Alternative (|), Kleene-Stern (*).

2. Basis: ∅, ε, einzelne Symbole.

3. Präzedenz: * > Konkatenation > |.

4. r* enthält IMMER das leere Wort ε.

5. Satz von Kleene: Regex = DFA = NFA = reguläre Sprachen.

6. (a|b)* = alle Wörter über {a, b}.

1. ε und ∅ verwechseln. ε ist das leere WORT (Sprache {ε}, ein Element). ∅ ist die leere SPRACHE (kein Element).

2. Stern schließt ε aus. Falsch: a* enthält ε (null Wiederholungen). Für „mindestens ein a“ schreibt man a·a* oder a+.

3. Präzedenz ignorieren. ab* heißt a·(b*), also ein a gefolgt von beliebig vielen b, NICHT (ab)*.

4. Regex für mächtiger halten als Automaten. Theoretische reguläre Ausdrücke sind exakt gleich mächtig wie DFAs/NFAs.

5. Praktische Regex-Features mit Theorie mischen. Rückwärtsreferenzen (\1) gehen über reguläre Sprachen hinaus, sind also nicht „regulär“ im theoretischen Sinn.

6. aⁿbⁿ mit Regex beschreiben wollen. Geht nicht, aⁿbⁿ ist nicht regulär (kein Regex, kein DFA). Regex kann nicht „zählen und vergleichen“.

Wähle einen regulären Ausdruck und prüfe, welche Test-Wörter er beschreibt (grün = Match, rot = kein Match). Tippe auch ein eigenes Wort aus a und b ein und beobachte live, ob es zur Sprache gehört. Das Operatoren-Panel erklärt Konkatenation, Alternative und Kleene-Stern.

Lade Visualisierung...

Klausur-Tipp: Lies einen Ausdruck wie (a|b)*ab von rechts: „irgendetwas, das auf ab endet“. Beim Stern immer das leere Wort mitdenken. Übe beide Richtungen: Sprache → Regex und Regex → Sprache.

Anmelden, um den Fortschritt zu speichern.

Nächster Schritt

Wenn du fertig bist: jetzt üben.

Aktives Abrufen festigt Wissen schneller als nochmal lesen.

War das hilfreich?

Verwandte Themen

  • Entwicklungsprozesse: Wasserfall / V-Modell / Inkrementell
  • OSI- und TCP/IP-Modell: 7 vs 4 Schichten erklärt (Informatik)
  • Von-Neumann-Architektur: CPU, Bus, Befehlszyklus (Informatik)
  • Agile Methoden: Scrum
  • UML Verhaltensdiagramme: Sequenz + Aktivität

Folgt

  • Kontextfreie Grammatiken: Ableitungsbaum, Mehrdeutigkeit (Informatik)
  • Pumping-Lemma: Nicht-Regularität beweisen (Informatik)

Tools

Bald: Karteikarten · Spaced-Repetition · Mind-Map-Export

Fachliche Qualität
Noch nicht klassifiziertNoch nicht geprüft.

Diese Lerneinheit wurde für typische Bachelor-Klausuren konzipiert. So prüfen wir · Fehler entdeckt? Melde ihn uns oder markiere die fragliche Stelle direkt im Text oben.

Klausur-ÜbersichtKomplette Übersicht: alle Tabs als linearer Text zum Lernen
▾

Alle Tabs der Lerneinheit (Erklärung · Interaktiv verstehen · Praxis-Übung · Klausur-Quiz) als durchgehender Text. Ideal zum Wiederholen vor der Klausur, und für Suchmaschinen wie Google, Bing und KI-Suche (ChatGPT, Perplexity).

Inhalt dieser Übersicht

  1. Erklärung(Erklärung)
  2. Interaktiv verstehen(Visualisierung / Interaktiv)
  3. Praxis-Übung(Quiz / Klausurfragen)
  4. Klausur-Quiz(Quiz / Klausurfragen)
Teil 1·Erklärung

Erklärung

Reguläre Ausdrücke und Sprachen

Wie beschreibt man eine ganze (unendliche) Menge von Wörtern mit einer kurzen Formel? Mit einem regulären Ausdruck. Er ist die dritte, kompakteste Beschreibung regulärer Sprachen, neben DFA und NFA. Klausurpflicht in 8/8 Theo-Inf-Modulen, oft als Umwandlung Regex ↔ Automat.

Die Idee in einem Satz

Ein regulärer Ausdruck beschreibt eine reguläre Sprache durch drei Operationen: Hintereinanderhängen (Konkatenation), Auswahl (Alternative) und Wiederholung (Kleene-Stern).

Die induktive Definition

Reguläre Ausdrücke über einem Alphabet Σ sind induktiv definiert:

Basis:

  • ∅ beschreibt die leere Sprache (kein Wort).
  • ε beschreibt die Sprache {ε} (nur das leere Wort).
  • jedes a ∈ Σ beschreibt die Sprache {a}.

Induktion (wenn r und s reguläre Ausdrücke sind):

  • r·s (Konkatenation): erst r, dann s.
  • r | s (Alternative, oft r + s): r oder s.
  • r* (Kleene-Stern): null oder mehr Wiederholungen von r.

Die beschriebene Sprache L(r)

Ausdruckbeschriebene Sprache
a·b{ab}
ab
a*{ε, a, aa, aaa, ...}
(ab)*
(ab)*ab

Operator-Präzedenz

Stern (*) bindet am stärksten, dann Konkatenation, dann Alternative (|).

Beispiel: a|b* bedeutet a | (b*), nicht (a|b)*. Klammern setzen, wenn etwas anderes gemeint ist.

Der Satz von Kleene

Eine Sprache ist genau dann regulär, wenn sie durch einen regulären Ausdruck beschrieben werden kann, genau dann, wenn sie von einem endlichen Automaten erkannt wird.

Regulärer Ausdruck, DFA und NFA sind also drei gleichwertige Beschreibungen derselben Sprachklasse. Man kann jede in jede umwandeln.

Von Regex zu NFA: Thompson-Konstruktion

Die Thompson-Konstruktion baut aus einem regulären Ausdruck systematisch einen ε-NFA: für jede Basis und jede Operation (Konkatenation, Alternative, Stern) gibt es ein kleines Automaten-Bauteil, die man zusammensteckt. So zeigt man eine Richtung des Satzes von Kleene.

Theoretische vs. praktische reguläre Ausdrücke

In der Theorie gibt es nur ∅, ε, Symbole, Konkatenation, | und *. Praktische Regex-Bibliotheken (in Programmiersprachen) haben Zusätze wie +, ?, Zeichenklassen [a-z] und Rückwärtsreferenzen. Achtung: Rückwärtsreferenzen machen praktische Regex MÄCHTIGER als reguläre Sprachen, das ist dann keine reine Theorie mehr.

Klausur-Faustregeln

1. 3 Operationen: Konkatenation, Alternative (|), Kleene-Stern (*).

2. Basis: ∅, ε, einzelne Symbole.

3. Präzedenz: * > Konkatenation > |.

4. r* enthält IMMER das leere Wort ε.

5. Satz von Kleene: Regex = DFA = NFA = reguläre Sprachen.

6. (a|b)* = alle Wörter über {a, b}.

Häufige Stolpersteine

1. ε und ∅ verwechseln. ε ist das leere WORT (Sprache {ε}, ein Element). ∅ ist die leere SPRACHE (kein Element).

2. Stern schließt ε aus. Falsch: a* enthält ε (null Wiederholungen). Für „mindestens ein a“ schreibt man a·a* oder a+.

3. Präzedenz ignorieren. ab* heißt a·(b*), also ein a gefolgt von beliebig vielen b, NICHT (ab)*.

4. Regex für mächtiger halten als Automaten. Theoretische reguläre Ausdrücke sind exakt gleich mächtig wie DFAs/NFAs.

5. Praktische Regex-Features mit Theorie mischen. Rückwärtsreferenzen (\1) gehen über reguläre Sprachen hinaus, sind also nicht „regulär“ im theoretischen Sinn.

6. aⁿbⁿ mit Regex beschreiben wollen. Geht nicht, aⁿbⁿ ist nicht regulär (kein Regex, kein DFA). Regex kann nicht „zählen und vergleichen“.

Teil 2·Visualisierung / Interaktiv

Interaktiv verstehen

Reguläre Ausdrücke, interaktiv

Wähle einen regulären Ausdruck und prüfe, welche Test-Wörter er beschreibt (grün = Match, rot = kein Match). Tippe auch ein eigenes Wort aus a und b ein und beobachte live, ob es zur Sprache gehört. Das Operatoren-Panel erklärt Konkatenation, Alternative und Kleene-Stern.

Interaktive Visualisierung

Interaktive Komponente: probiere sie im Topic-Player oben aus.

Klausur-Tipp: Lies einen Ausdruck wie (a|b)*ab von rechts: „irgendetwas, das auf ab endet“. Beim Stern immer das leere Wort mitdenken. Übe beide Richtungen: Sprache → Regex und Regex → Sprache.

Teil 3·Quiz / Klausurfragen

Praxis-Übung

Reguläre Ausdrücke, Praxis-Übung

6 Aufgaben zu Syntax, Sprache und Präzedenz.

Klausurfragen mit Lösungen (6)

F1.Welche Sprache beschreibt der Kleene-Stern a\*?

Antwort: {ε, a, aa, aaa, ...} (null oder mehr a)

Erklärung: a\* (Kleene-Stern) beschreibt null oder mehr Wiederholungen von a, also {ε, a, aa, aaa, ...}. Wichtig: das leere Wort ε ist immer dabei (null Wiederholungen). Für „mindestens ein a“ schreibt man a·a\* oder a+. Klausur-Grundbegriff.

F2.Welche drei Operationen bilden reguläre Ausdrücke?

Antwort: Konkatenation, Alternative (|), Kleene-Stern (\*)

Erklärung: Die drei Operationen sind Konkatenation (Hintereinanderhängen), Alternative | (Auswahl) und Kleene-Stern \* (Wiederholung). Plus die Basis ∅, ε und einzelne Symbole. AND/OR/NOT gehören zur booleschen Algebra, Push/Pop zum Kellerautomaten. Klausur-Pflichtwissen.

F3.Ordne den regulären Ausdruck seiner Sprache zu.

Zuordnungen:

  • a|b → {a, b}
  • ab → {ab}
  • (ab)* → {ε, ab, abab, ...}
  • (a|b)* → alle Wörter über {a,b}

Erklärung: a|b = Auswahl {a, b}. ab = Konkatenation {ab}. (ab)\* = Wiederholung von ab, inkl. ε. (a|b)\* = beliebige Folge aus a und b, also alle Wörter über dem Alphabet. Klausur-Pflicht-Zuordnung.

Typ: Zuordnung

F4.Was bedeutet der Ausdruck ab\* (mit Standard-Präzedenz)?

Antwort: ein a, gefolgt von null oder mehr b

Erklärung: Der Stern bindet stärker als die Konkatenation, also ist ab\* = a·(b\*): ein a, gefolgt von null oder mehr b. Für „ab beliebig oft“ müsste man (ab)\* klammern. Präzedenz: \* > Konkatenation > |. Klausur-Stolperstein.

F5.ε (das leere Wort) und ∅ (die leere Sprache) bezeichnen dasselbe.

Antwort: Falsch

Erklärung: FALSCH. ε ist das leere WORT, die Sprache {ε} enthält genau ein Element (das leere Wort). ∅ ist die leere SPRACHE, sie enthält KEIN Wort. Der Unterschied: {ε} hat ein Element, ∅ hat null Elemente. Klassischer Klausur-Stolperstein.

Typ: Wahr/Falsch

F6.Welche Sprache lässt sich NICHT durch einen regulären Ausdruck beschreiben?

Antwort: Wörter der Form aⁿbⁿ (gleich viele a wie b)

Erklärung: aⁿbⁿ ist NICHT regulär: ein regulärer Ausdruck (wie ein DFA) kann nicht beliebig große Zahlen zählen und vergleichen. Die anderen drei Sprachen sind regulär (z.B. ((a|b)(a|b))\* für gerade Länge). Die Nicht-Regularität von aⁿbⁿ beweist man mit dem Pumping-Lemma. Klausur-Grenzfrage.

Teil 4·Quiz / Klausurfragen

Klausur-Quiz

Reguläre Ausdrücke, Klausur-Quiz

6 Klausur-Fragen zu Kleene, Thompson und Sprachklassen.

Klausurfragen mit Lösungen (6)

F1.Was besagt der Satz von Kleene?

Antwort: Reguläre Ausdrücke, endliche Automaten und reguläre Sprachen sind gleichwertig

Erklärung: Der Satz von Kleene: Eine Sprache ist genau dann regulär, wenn sie durch einen regulären Ausdruck beschreibbar ist, genau dann, wenn ein endlicher Automat sie erkennt. Regex, DFA und NFA sind also drei gleichwertige Beschreibungen derselben Sprachklasse. Klausur-Kernsatz.

F2.Welches Verfahren konstruiert aus einem regulären Ausdruck einen NFA?

Antwort: Thompson-Konstruktion

Erklärung: Die Thompson-Konstruktion baut aus einem regulären Ausdruck systematisch einen ε-NFA, indem sie für jede Operation (Konkatenation, Alternative, Stern) ein kleines Automaten-Bauteil zusammensetzt. Die Potenzmengenkonstruktion geht NFA → DFA, der CYK-Algorithmus gehört zu kontextfreien Grammatiken. Klausur-Verfahren.

F3.Ordne die Basis dem regulären Ausdruck zu.

Zuordnungen:

  • ∅ → leere Sprache (kein Wort)
  • ε → Sprache {ε} (nur leeres Wort)
  • a → Sprache {a}
  • a* → {ε, a, aa, ...}

Erklärung: ∅ = leere Sprache (null Wörter). ε = Sprache mit nur dem leeren Wort (ein Element). a = Sprache mit nur dem Wort a. a\* = null oder mehr a, also {ε, a, aa, ...}. Klausur-Pflicht-Zuordnung der Basisfälle.

Typ: Zuordnung

F4.Welche Präzedenz haben die Regex-Operatoren (von stark zu schwach)?

Antwort: Stern > Konkatenation > Alternative

Erklärung: Die Präzedenz (Bindungsstärke): Kleene-Stern (\*) am stärksten, dann Konkatenation, dann Alternative (|) am schwächsten. Daher ist a|b\* = a | (b\*) und ab\* = a·(b\*). Klammern überschreiben die Präzedenz. Klausur-Pflichtregel.

F5.Praktische Regex mit Rückwärtsreferenzen können Sprachen beschreiben, die nicht regulär sind.

Antwort: Wahr

Erklärung: RICHTIG. Rückwärtsreferenzen (z.B. (a+)\1 für „etwas, dann dasselbe nochmal“) gehen über die theoretischen regulären Ausdrücke hinaus und können nicht-reguläre Sprachen beschreiben. Reine theoretische Regex (nur ∅, ε, Symbole, Konkatenation, |, \*) sind dagegen exakt so mächtig wie endliche Automaten. Klausur-Abgrenzung Theorie vs. Praxis.

Typ: Wahr/Falsch

F6.Wie beschreibt man als regulären Ausdruck alle Wörter über {a,b} mit mindestens einem a?

Antwort: (a|b)*a(a|b)*

Erklärung: (a|b)\*a(a|b)\* erzwingt mindestens ein a in der Mitte, davor und danach beliebige Zeichen. a(a|b)\* wäre zu eng (verlangt, dass das Wort MIT a beginnt). a\* enthält nur a (kein b), und das leere Wort. Klausur-Konstruktionsaufgabe: ein Pflicht-Symbol mit (a|b)\* umrahmen.

Zur KategorieSoftwaretechnik.Mehr Themen entdeckenZum Themen-Hub.

UniProMax ist eine themenbasierte Lernplattform für Studierende an deutschen Unis.

Wir glauben, dass Verstehen besser ist als Auswendiglernen. Wir bauen Lerneinheiten die zeigen statt erzählen. Code, Visualisierung, Quiz. Auf Deutsch.

Marke

UniProMaxUniProMax

Themenbasiert, visuell, interaktiv.

Inhalte

  • Alle Themen (Hub)
  • Programmiergrundlagen
  • Algorithmen
  • Mathematik
  • Statistik
  • Datenbanken
  • Rechnungswesen
  • VWL

Studiengang-Filter

  • Informatik
  • Wirtschaftsinformatik
  • BWL
  • Data Science
  • VWL
  • Wirtschaftsingenieurwesen
  • Mathe
  • Psychologie
  • weitere Studiengänge folgen

Plattform

  • Mein Fortschritt
  • Impressum
  • Datenschutz
© 2026 UniProMaxAlle Systeme onlinev0.2 / Sommersemester 2026
UniProMaxUniProMaxUniProMaxUniProMax