So funktioniert das Muster
| Teil | Bedeutung |
|---|---|
(?:0[1-9]|1[0-2]) | Monat 01–12 zuerst (US-Reihenfolge) |
\/ | Ein Schrägstrich (für JavaScript-Literale escaped) |
(?:0[1-9]|[12]\d|3[01]) | Tag 01–31 |
\d{4}$ | Vierstellige Jahreszahl am Ende |
Codebeispiele
JavaScript
const re = /^(?:0[1-9]|1[0-2])\/(?:0[1-9]|[12]\d|3[01])\/\d{4}$/;
re.test(value); // true or falsePython
import re
bool(re.fullmatch(r'(?:0[1-9]|1[0-2])/(?:0[1-9]|[12]\d|3[01])/\d{4}', value))PHP
preg_match('/^(?:0[1-9]|1[0-2])\/(?:0[1-9]|[12]\d|3[01])\/\d{4}$/', $value) === 1;
Hinweise und Einschränkungen
Um auch einstellige Monate und Tage zu akzeptieren, ersetze 0[1-9] durch 0?[1-9] an beiden Stellen. Die Tage pro Monat werden nicht geprüft, daher solltest du das Datum danach selbst validieren.
Regex-Tester
Gib ein Muster ein und sieh zu, wie Übereinstimmungen in deinem Testtext in Echtzeit hervorgehoben werden.