Weiter zum Inhalt

Zeichenketten mit regulären Ausdrücken bereinigen

Dieses Tutorial basiert auf Inhalten aus DataCamps Kurs Cleaning Data in Python und zeigt dir, wie du Zeichenketten mit regulären Ausdrücken bereinigst.
Aktualisiert 18. Sept. 2026  · 4 Min. lesen

Mit KI erkunden

ChatGPTClaudePerplexity

Wenn du unseren kostenlosen Einführungskurs zu R machen möchtest, findest du hier den Link.

Numerische Werte aus Zeichenketten extrahieren

Das Extrahieren von Zahlen aus Strings ist eine gängige Aufgabe, besonders bei unstrukturierten Daten oder Logdateien.

Angenommen, du hast folgenden String: 'the recipe calls for 6 strawberries and 2 bananas'.

Es wäre praktisch, die 6 und die 2 aus diesem String zu ziehen, um sie später für den Vergleich des Erdbeer-zu-Bananen-Verhältnisses zu nutzen.

Wenn du einen regulären Ausdruck verwendest, um mehrere Zahlen zu extrahieren (genauer: mehrere Musterübereinstimmungen), kannst du die Funktion re.findall() nutzen. Dan ist im Video nicht darauf eingegangen, aber die Anwendung ist einfach: Du übergibst ein Muster und einen String an re.findall(), und es liefert eine Liste mit allen Treffern zurück.

Anleitung

  • Importiere re.
  • Schreibe ein Muster, das alle Zahlen in folgendem String findet: 'the recipe calls for 10 strawberries and 1 banana'. Gehe dazu so vor:
    • Verwende die Funktion re.findall() und übergib zwei Argumente: zuerst das Muster, dann den String.
    • \d ist das Muster für Ziffern. Hänge ein + an, damit das vorherige Element ein- oder mehrmals gematcht wird. So wird 10 als eine Zahl erkannt und nicht als 1 und 0.
  • Gib die Treffer aus, um zu bestätigen, dass dein regulärer Ausdruck die Werte 10 und 1 gefunden hat.
# Import the regular expression module ____ # Find the numeric values: matches matches = re.findall('____', '____') # Print the matches print(____) # Import the regular expression module import re # Find the numeric values: matches matches = re.findall('\d+', 'the recipe calls for 10 strawberries and 1 banana') # Print the matches print(matches) Ex().test_import('re') Ex().test_correct(test_object('matches'), test_function('re.findall')) Ex().test_function('print') success_msg('Excellent work - your regular expression successfully extracted the numeric values 10 and 1 from the string!')
  • Verwende den Befehl import x, um das Modul x zu importieren.
  • Das erste Argument von re.findall() sollte \d+ sein, das zweite der String: 'the recipe calls for 10 strawberries and 1 banana'.
  • Nutze die bereitgestellte print()-Funktion, um matches auszugeben.

Wenn das klar ist, mach mit der nächsten Übung weiter! Falls nicht, hier ist ein Überblicksvideo.

Überblicksvideo: Reguläre Ausdrücke zum Bereinigen von Strings in Python

Pattern Matching

In dieser Übung vertiefst du deine Fähigkeiten mit regulären Ausdrücken. Für jeden gegebenen String schreibst du das passende Muster, das ihn matched.

Anleitung

  • Schreibe Muster für:
    • Eine Telefonnummer im Format xxx-xxx-xxxx. Das hast du bereits in einer früheren Übung gemacht.
    • Einen String im Format: Ein Dollarzeichen, eine beliebige Anzahl von Ziffern, ein Dezimalpunkt, 2 Ziffern.
      • Verwende \$ für das Dollarzeichen, \d* für eine beliebige Anzahl Ziffern, \. für den Dezimalpunkt und \d{x} für genau x Ziffern.
  • Ein Großbuchstabe, gefolgt von einer beliebigen Anzahl alphanumerischer Zeichen.
    • Nutze [A-Z], um einen Großbuchstaben zu matchen, gefolgt von \w* für eine beliebige Anzahl alphanumerischer Zeichen.
import re # Write the first pattern pattern1 = bool(re.match(pattern='____', string='123-456-7890')) print(pattern1) # Write the second pattern pattern2 = bool(re.match(pattern='____', string='$123.45')) print(pattern2) # Write the third pattern pattern3 = bool(re.match(pattern='____', string='Australia')) print(pattern3) # Write the first pattern pattern1 = bool(re.match(pattern='\d{3}-\d{3}-\d{4}', string='123-456-7890')) print(pattern1) # Write the second pattern pattern2 = bool(re.match(pattern='\$\d*\.\d{2}', string='$123.45')) print(pattern2) # Write the third pattern pattern3 = bool(re.match(pattern='[A-Z]\w*', string='Australia')) print(pattern3) Ex().test_correct(test_object('pattern1'), test_function('re.match', index=1)) Ex().test_function('print', index=1) Ex().test_correct(test_object('pattern2'), test_function('re.match', index=2)) Ex().test_function('print', index=2) Ex().test_correct(test_object('pattern3'), test_function('re.match', index=3)) Ex().test_function('print', index=3) success_msg("Great work! You're mastering the fundamentals of writing regular expressions!")
  • Die erste Vorlage besteht aus drei Teilen: xxx, xxx und xxxx. Die ersten beiden werden mit \d{3} gematcht, der letzte mit \d{4}. Jeder Teil wird durch ein - getrennt.

Wenn du mehr aus diesem Kurs mitnehmen willst, hier ist der Link.

Schau dir auch DataCamps Python String Tutorial an.

Themen
Python
Datenwissenschaft

Mehr über Python erfahren

Kurs

Reguläre Ausdrücke in Python

4 Std.
49.8K
Lerne Zeichenkettenmanipulation und werde zum Meister im Umgang mit regulären Ausdrücken.
Details anzeigenRight Arrow
Kurs Starten
Mehr anzeigenRight Arrow
Verwandt

Tutorial

Python-Tutorial zum Verknüpfen von Zeichenfolgen

Lerne verschiedene Methoden zum Verknüpfen von Zeichenfolgen in Python kennen, mit Beispielen, die jede Technik zeigen.
DataCamp Team's photo

DataCamp Team

5 Min.

Tutorial

So kürzt man eine Zeichenfolge in Python: Drei verschiedene Methoden

Lerne die Grundlagen zum Entfernen von führenden und nachfolgenden Zeichen aus einer Zeichenfolge in Python.
Adel Nehme's photo

Adel Nehme

6 Min.

Tutorial

Wie man in Python eine Liste in eine Zeichenfolge umwandelt

Lerne in diesem kurzen Tutorial, wie du in Python eine Liste in eine Zeichenfolge umwandelst.
Adel Nehme's photo

Adel Nehme

Tutorial

Python Datenstrukturen Tutorial

Mach dich mit Python-Datenstrukturen vertraut: Lerne mehr über Datentypen und primitive sowie nicht-primitive Datenstrukturen wie Strings, Listen, Stapel usw.
Sejal Jaiswal's photo

Sejal Jaiswal

24 Min.

Tutorial

Python-Anweisungen IF, ELIF und ELSE

In diesem Tutorial lernst du ausschließlich Python if else-Anweisungen kennen.
Sejal Jaiswal's photo

Sejal Jaiswal

9 Min.

Tutorial

Python-Schleifen-Tutorial

Ein umfassendes Einführungs-Tutorial zu Python-Schleifen. Lerne und übe while- und for-Schleifen, verschachtelte Schleifen, die Schlüsselwörter break und continue, die Range-Funktion und vieles mehr!
Satyabrata Pal's photo

Satyabrata Pal

15 Min.

Mehr AnzeigenMehr Anzeigen