Validateurs du monde réel
Reconnaissez les formats que vous croisez tous les jours — entiers, décimaux, couleurs hexadécimales, heures, dates, e-mails, slugs, adresses IP, codes ZIP et bien plus.
Lire les règles : Motifs courants dans le Guide →S'entraîner : Validateurs de formats →
Fait suite à Lookarounds
Ce que vous allez apprendre
Étapes · 14
- 01Valider le monde réelBriefing
- 02Nombres entiersChasse
- 03Nombres décimauxChasse
- 04Couleurs hexadécimalesChasse
- 05Heures au format 24 hChasse
- 06Dates ISOChasse
- 07E-mails simplesChasse
- 08Slugs d'URLChasse
- 09Adresses IPv4Chasse
- 10Codes ZIP américainsChasse
- 11HashtagsChasse
- 12Noms d'utilisateurChasse
- 13Golf : hexa courtChasse
- 14Validateurs terminésBriefing
Motifs de validation en regex
Une regex de validation répond à une seule question : ce texte a-t-il la bonne forme ? Formulaires d'inscription, tableurs et fichiers de configuration regorgent de valeurs qui doivent avoir un certain aspect : une heure, une date, un code couleur ou une adresse e-mail. Encadrez le motif de ^ et $ et il doit correspondre à toute la valeur : une espace égarée ou des caractères en trop font échouer la vérification.
Chaque format se construit à partir de petites pièces. \d est un chiffre, {4} en demande exactement quatre, ? rend une partie facultative, et un groupe comme (am|pm) liste les choix autorisés. Les plages de nombres demandent le plus de soin : (100|[1-9]?\d) couvre 0 à 100, alors que \d+ laisserait aussi passer 250. Dans chaque chasse de ce parcours, vous écrivez un validateur qui attrape les bonnes valeurs et épargne celles qui sont presque bonnes.
Soyez lucide sur ce qu'une regex peut savoir. Elle vérifie le format, pas le sens. Un motif de date accepte sans broncher 31/02/2026, sauf si vous écrivez des branches supplémentaires pour chaque mois, et un motif d'e-mail ne peut pas savoir si la boîte existe. Servez-vous de la regex comme d'un premier filtre rapide, puis laissez du vrai code vérifier le calendrier, envoyer un e-mail de confirmation ou chercher l'enregistrement.
Exemples
Attrapés
- 9:30 am
- 12:05PM
- 07:45 pm
Épargnés
- 13:00 pm
- 9:60 am
- 9:30
Une heure au format 12 heures : de 1 à 12 avec un zéro initial facultatif, et le marqueur
iacceptepmcommePM.Attrapés
- 05/11/2026
- 31/12/1999
- 31/02/2026
Épargnés
- 5/11/2026
- 12/13/2026
- 32/01/2026
Le jour et le mois sont contrôlés par plage, et pourtant
31/02/2026passe : le motif connaît les formes, pas le calendrier.Attrapés
- ABC-1234
- XYZ-0042
Épargnés
- AB-1234
- abc-1234
- ABC-12345
- ABC1234
Un code produit : exactement trois majuscules, un tiret et quatre chiffres, et les ancres refusent tout ce qui est plus long.
Attrapés
- 0%
- 42%
- 100%
Épargnés
- 101%
- 07%
- 42
[1-9]?\dcouvre 0 à 99 sans zéro initial, et100a sa propre branche.
Erreurs courantes
- Oublier les ancres. Sans
^et$, un motif de quatre chiffres laisse aussi passer12345etabc2026, car il trouve une correspondance quelque part à l'intérieur. - Laisser le point nu. Dans un nombre décimal ou un domaine,
.correspond à n'importe quel caractère, si bien que3x14passe une vérification de nombre ; écrivez\.quand vous voulez un vrai point. - Vouloir couvrir tous les cas limites en un seul motif. Une regex d'e-mail entièrement conforme à la norme fait des centaines de caractères ; un motif court plus un e-mail de confirmation se lit mieux et repère davantage de vraies erreurs.
Lire les règles : Motifs courants dans le Guide →S'entraîner : Validateurs de formats →
À lire aussi : Regex d'e-mail : des motifs prêts à copier qui marchent vraiment →
À lire aussi : Regex pour les adresses IPv4 : bien couvrir les nombres de 0 à 255 →