Date Regex Python

Regex für Datumsangaben in Python: Ein Leitfaden

Florian Zyprian

Hallo liebe Python-Entwickler,

es ist nicht ungewöhnlich, dass wir in unserer täglichen Arbeit als EntwicklerInnen Datumsangaben verarbeiten müssen. Es gibt viele Bibliotheken, die dabei helfen können, aber manchmal ist die Verwendung von regulären Ausdrücken (Regex) die einfachste Methode. In diesem Blogpost möchte ich verschiedene Regex-Muster vorstellen, um Datumsangaben in verschiedenen Formaten zu extrahieren.

Dieser Artikel wurde auf Deutsch verfasst und redaktionell überprüft. Weitere Sprachen stehen als automatische Übersetzung zur Verfügung. Wir freuen uns über Feedback am Ende des Artikels.

Warum Regex?

Reguläre Ausdrücke bieten eine schnelle und effiziente Möglichkeit, Muster in Texten zu erkennen. Wenn man beispielsweise ein Datumsformat in einer großen Menge an Text finden möchten, ist Regex oft die schnellste Lösung auch wenn NLP Modelle natürlich besondere Möglichkeiten bieten.

Regex für verschiedene Datumsformate

MM/DD/YYYY oder MM-DD-YYYY

\b(0[1-9]|1[0-2])[-/](0[1-9]|[12]\d|3[01])[-/](19\d\d|20\d\d)\b

DD/MM/YYYY oder DD-MM-YYYY

\b(0[1-9]|[12]\d|3[01])[-/](0[1-9]|1[0-2])[-/](19\d\d|20\d\d)\b

YYYY/MM/DD oder YYYY-MM-DD

\b(19\d\d|20\d\d)[-/](0[1-9]|1[0-2])[-/](0[1-9]|[12]\d|3[01])\b

MM-DD-YY oder MM/DD/YY

\b(0[1-9]|1[0-2])[-/](0[1-9]|[12]\d|3[01])[-/](\d\d)\b

YYYY-MM-DD (ISO 8601)

\b(19\d\d|20\d\d)-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])\b

Python Codebeispiel

Hier ist ein einfaches Beispiel, wie man diese Regex-Muster in Python verwenden kann:

import re

def find_dates(text, pattern):
    return re.findall(pattern, text)

text = "Das Datum ist 09/02/2023 und der andere Termin ist am 12-12-2024."
pattern = r"\b(0[1-9]|1[0-2])[-/](0[1-9]|[12]\d|3[01])[-/](19\d\d|20\d\d)\b"

dates = find_dates(text, pattern)
print("Gefundene Daten:", dates)

Schlusswort

Das Erkennen von Datumsangaben mit Regex in Python ist eine wertvolle Fähigkeit, die Ihnen viel Zeit sparen kann. Beachten sollte man jedoch, dass diese Muster nicht für Monate mit weniger als 31 Tagen oder Schaltjahre optimiert sind, da Regex nur feste Regeln implementieren können. Für komplexere Anforderungen sollte man eine spezialisierte Datumsbibliothek wie dateutil oder pandas oder das Konfuzio SDK in Erwägung ziehen.

Ich hoffe, dieser Leitfaden war hilfreich! Bei Fragen oder Anregungen, gerne einen Kommentar zu hinterlassen.

Bis zum nächsten Mal!

Über mich

0 Kommentare

Schreiben Sie einen Kommentar

Weitere Artikel

ZBar: Document AI – Effiziente Extraktion von Barcodes

In der Welt der Dokumentenverarbeitung und des Datenmanagements spielt die Fähigkeit, Barcodes schnell und genau zu dekodieren, eine entscheidende Rolle.…

Zum Artikel

Software Development Kit: Ein SDK richtig auswählen und einsetzen

Software Development Kits sind ein wesentlicher Bestandteil der Softwareentwicklung geworden. Denn: Mit diesen können Unternehmen schnell z. B. Apps entwickeln…

Zum Artikel
Umfassender Leitfaden zu Jupyter Notebook auf macOS

Umfassender Leitfaden zu Jupyter Notebook auf macOS

Jupyter Notebook ist ein beliebtes Werkzeug unter Datenwissenschaftlern und Forschern aufgrund seiner interaktiven Python Umgebung. In diesem Tutorial untersuchen wir…

Zum Artikel

    Arrow-up

    Dieser Artikel wurde auf Deutsch verfasst und redaktionell überprüft. Weitere Sprachen stehen als automatische Übersetzung zur Verfügung. Wir freuen uns über Feedback am Ende des Artikels.

    Navigation