Fonctionnement du motif
| Partie | Signification |
|---|---|
\d{4}-\d{2}-\d{2} | La date |
T | Le séparateur T littéral |
\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)? | Heures et minutes, secondes et fractions facultatives |
(?:Z|[+-]\d{2}:\d{2}) | Z pour UTC, ou un décalage tel que +05:30 |
Exemples de code
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 falsePython
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;
Notes et limites
Cette regex impose un fuseau horaire, ce qui évite les horodatages ambigus. new Date().toISOString() en JavaScript produit toujours une chaîne correspondante. Convertissez les horodatages avec le convertisseur de timestamp Unix.
Testeur d’expressions régulières
Saisissez un modèle et observez les correspondances s'afficher en temps réel dans votre texte de test.