RegEx in Python
Regelbasierte Informationsextraktion ist für viele NLP-Aufgaben hilfreich. Bestimmte Entitätstypen wie Datumsangaben oder Telefonnummern haben eindeutige Formate, die sich anhand von Regeln erkennen lassen – ganz ohne ein Modell zu trainieren. In dieser Übung arbeitest du mit dem Paket re für RegEx. Ziel ist es, Telefonnummern in einem gegebenen text zu finden.
Das Paket re ist bereits importiert. Du kannst \d verwenden, um Zeichenmuster zu finden, die für ein Metazeichen stehen, das jede Ziffer von 0 bis 9 matcht.
Diese Übung ist Teil des Kurses
Natural Language Processing mit spaCy
Anleitung zur Übung
- Definiere ein Muster, das Telefonnummern im Format (111)-111-1111 matched.
- Finde alle passenden Muster mit der Methode
re.finditer(). - Gib für jedes Match die Start- und Endposition sowie den passenden Abschnitt des gegebenen
textaus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
text = "Our phone number is (425)-123-4567."
# Define a pattern to match phone numbers
pattern = r"\((____){____}\)-(____){____}-(____){____}"
# Find all the matching patterns in the text
phones = re.____(pattern, text)
# Print start and end characters and matching section of the text
for match in phones:
start_char = match.____
end_char = match.____
print("Start character: ", ____, "| End character: ", ____, "| Matching text: ", text[____:____])