Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Gruppierung, Quantoren und Anker | Intermediate Regular Expressions
Python Reguläre Ausdrücke

Gruppierung, Quantoren und Anker

Swipe um das Menü anzuzeigen

Das Verständnis, wie man Teile eines Musters gruppiert, die Anzahl der Wiederholungen angibt und definiert, wo ein Treffer innerhalb eines Strings erfolgen soll, sind grundlegende Fähigkeiten zum Schreiben leistungsfähiger regulärer Ausdrücke. In Python verwendet man Klammern (), um Gruppen zu erstellen, wodurch mehrere Zeichen als eine Einheit behandelt werden. Quantifizierer wie *, +, ? und {n,m} steuern, wie oft ein Zeichen oder eine Gruppe erscheinen soll. Anker wie ^ und $ sind spezielle Symbole, die jeweils den Anfang oder das Ende eines Strings markieren.

Gruppierung mit Klammern

Die Gruppierung mit Klammern ermöglicht es, Quantifizierer auf ganze Teilmuster statt auf einzelne Zeichen anzuwenden. Zum Beispiel passt (ab)+ auf eine oder mehrere Wiederholungen der Sequenz ab.

Quantifizierer

  • Das Sternchen (*) bedeutet "null oder mehrmals";
  • Das Pluszeichen (+) bedeutet "einmal oder mehrmals";
  • Das Fragezeichen (?) bedeutet "null oder einmal";
  • Geschweifte Klammern ({n,m}) geben eine minimale (n) und maximale (m) Anzahl an Wiederholungen an.

Anker

Anker sind keine zu vergleichenden Zeichen, sondern Markierungen für Positionen im String. Das Zirkumflex (^) markiert den Anfang, während das Dollarzeichen ($) das Ende eines Strings markiert.

1234567
import re text = "hello hello world world world" pattern = r"(world\s+)+" matches = re.findall(pattern, text) print(matches)

Schritt-für-Schritt-Analyse: Gruppierung und Quantifizierer

In diesem Beispiel wird das reguläre Ausdrucksmuster (world\s+)+ verwendet, um wiederholte Vorkommen des Wortes world gefolgt von Leerzeichen zu finden. Die Funktionsweise dieses Musters lässt sich wie folgt aufschlüsseln:

  • Die Klammern () bilden eine Gruppe um world\s+ und behandeln das Wort world sowie das nachfolgende Leerzeichen als eine Einheit;
  • Das Pluszeichen + als Quantifizierer direkt nach der Gruppe bedeutet, dass diese Gruppe einmal oder mehrmals hintereinander erscheinen muss;
  • Dadurch passt das Muster auf jede Sequenz, in der world mit Leerzeichen dazwischen wiederholt wird, und erfasst die längste solche Sequenz.

Gruppierung ist besonders nützlich, wenn Quantifizierer auf eine Zeichenfolge angewendet oder Teile eines Treffers für die spätere Verwendung erfasst werden sollen. Quantifizierer können auf einzelne Zeichen, Zeichengruppen oder ganze Gruppen angewendet werden. Durch die Verwendung von Ankern mit diesen Mustern kann zusätzlich gesteuert werden, wo Treffer auftreten, beispielsweise um ein wiederholtes Wort nur am Anfang oder Ende eines Strings zu finden.

question mark

Was passt das Regex-Muster (ab)+ ab?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 1

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 2. Kapitel 1
some-alt