Regex für ISO 8601 Datum und Uhrzeit

Verwende /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:\d{2})$/, um zu prüfen, ob eine komplette Zeichenkette ein gültiges ISO 8601 Datum und Uhrzeit ist. Jedes Beispiel unten ist gegen das Muster getestet, und du kannst es mit vorgeladenen Beispielen im Regex-Tester öffnen.

Aktualisiert am

/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:\d{2})$/
Im Regex-Tester öffnen
EingabeErgebnis
2026-10-30T14:30:00Z✓ Treffer
2026-10-30T14:30:00.123+05:30✓ Treffer
2026-10-30T14:30Z✓ Treffer
2026-10-30 14:30:00✗ Kein Treffer
2026-10-30T14:30:00✗ Kein Treffer
2026-10-30T14:30:00+0530✗ Kein Treffer

So funktioniert das Muster

TeilBedeutung
\d{4}-\d{2}-\d{2}Das Datum
TDas wörtliche Trennzeichen T
\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?Stunden und Minuten, optionale Sekunden und Bruchteile
(?:Z|[+-]\d{2}:\d{2})Z für UTC oder ein Offset wie +05:30

Code-Beispiele

JavaScript

const re = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:\d{2})$/;
re.test(value); // true or false

Python

import re

bool(re.fullmatch(r'\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:\d{2})', value))

PHP

preg_match('/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:\d{2})$/', $value) === 1;

Hinweise und Einschränkungen

Dafür ist eine Zeitzone erforderlich, was mehrdeutige Zeitstempel vermeidet. new Date().toISOString() in JavaScript erzeugt immer eine passende Zeichenkette. Wandle Zeitstempel mit dem Unix-Timestamp-Konverter um.

Häufige Fragen

Wie lautet der Regex für ISO 8601 Datum und Uhrzeit?
/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:\d{2})$/ — er prüft die gesamte Zeichenkette. Die Tabelle oben zeigt, was jeder Teil bewirkt.
Welche Beispiele passen?
Von den getesteten Beispielen passen diese: 2026-10-30T14:30:00Z, 2026-10-30T14:30:00.123+05:30, 2026-10-30T14:30Z. Die anderen passen nicht.
Wie teste ich diesen Regex?
Klicke auf „Im Regex-Tester öffnen“ – Muster, Flags und Beispieltext werden automatisch geladen, und Treffer werden beim Bearbeiten markiert.