Erfassen Sie Gruppen mit regulären Ausdrücken in Python

Haider Ali 10 Oktober 2023
Erfassen Sie Gruppen mit regulären Ausdrücken in Python

Dieses Tutorial zeigt, wie wir die Gruppen mit Hilfe von regulären Ausdrücken in Python erfassen können. Wir werden auch etwas über die Gruppen lernen und wie wir sie erfassen können. Tauchen wir ein.

Erfassen Sie Gruppen mit regulären Ausdrücken in Python

Eine Gruppe ist ein in Klammern eingeschlossenes Metazeichen in einem Regex-Muster. Wir können eine Gruppe bilden, indem wir das Regex-Muster innerhalb des Klammerpaars () haben. Beispielsweise werden die Buchstaben c, a und t durch den regulären Ausdruck (Katze) zu einer einzigen Gruppe zusammengefasst.

Beispielsweise möchten Sie möglicherweise Telefonnummern und E-Mails in einem realen Szenario aufzeichnen. Daher sollten Sie zwei Gruppen erstellen, von denen die erste nach E-Mails und die zweite nach Telefonnummern sucht.

Darüber hinaus können wir Gruppen erfassen, um eine Reihe von Zeichen als eine Einheit zu behandeln. Sie werden erstellt, indem Klammern um die zu gruppierenden Zeichen gesetzt werden.

Wir können beliebig viele Gruppen angeben. Beispielsweise können wir eine Gruppe jedes Untermusters in einem Paar Klammern aufzeichnen. Die Nummern in den öffnenden Klammern der Fanggruppen werden von links nach rechts gezählt.

Die Funktion zum Abgleich regulärer Ausdrücke von Capturing Groups ermöglicht es uns, das Objekt match abzufragen, um den Teil des Textes zu bestimmen, der mit einer bestimmten Regex-Komponente übereinstimmt.

Was in Klammern () eingeschlossen ist, ist eine Erfassungsgruppe. Der übereinstimmende Wert jeder Gruppe kann mit der Methode group(group number) des Regex-Objekts match extrahiert werden.

Zuerst müssen Sie regex mit dem folgenden Befehl in Ihrem Python-Verzeichnis installieren.

pip install regex

Sehen Sie sich den folgenden Code an, um zu erfahren, wie wir Gruppen mit regulären Ausdrücken in Python erfassen können.

import re

date = "09/03/2022"
pattern = re.compile("(\d{2})\/(\d{2})\/(\d{4})")
match = pattern.match(date)

print("start")
print(match)
print(match.groups())

# group 0 : matches whole expression
print(match.group(0))

# group 1: match 1st group
print(match.group(1))

# group 2: match 2nd group
print(match.group(2))

# group 3: match 3rd group
print(match.group(3))

Die Ausgabe ist wie folgt:

start
<re.Match object; span=(0, 10), match='09/03/2022'>
('09', '03', '2022')
09/03/2022
09
03
2022

Wie Sie sehen können, können wir jede Gruppe anhand ihres Indexwerts erfassen.

Autor: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn

Verwandter Artikel - Python Regex