Sur le terrain
Du vrai texte — tickets de caisse, journaux, e-mails — où un seul motif combine tout ce que vous avez appris : classes, quantificateurs, ancres et groupes.
S'entraîner : Formats du monde réel →
Fait suite à Techniques de golf
Ce que vous allez apprendre
Étapes · 12
- 01En route pour le terrainBriefing
- 02Lire le ticket de caisseChasse
- 03Récupérer les e-mailsChasse
- 04Valider des noms d'utilisateurChasse
- 05Trier le journalChasse
- 06Trouver les hashtagsChasse
- 07Reconnaître les heures sur 24 hChasse
- 08Lire les notes de versionChasse
- 09Valider des couleurs hexadécimalesChasse
- 10À vous de jouerChasse
- 11Golf sur le terrainChasse
- 12Mission de terrain accomplieBriefing
Regex sur du vrai texte : logs, tickets de caisse et e-mails
Le vrai texte est désordonné. Un ticket de caisse mélange noms d'articles, prix et dates ; une ligne de log serveur entasse un horodatage, un niveau et un message ; un e-mail contient des en-têtes, des citations et une signature. Utiliser les regex sur du vrai texte, c'est trouver les morceaux qui vous intéressent au milieu de tout ce bruit, pas vérifier une seule valeur bien propre.
C'est là que les bases se rejoignent. Une classe choisit les caractères, un quantificateur fixe leur nombre, une ancre ou \b indique où une correspondance peut commencer ou finir, et un groupe avec | liste les variantes que les gens écrivent vraiment. Dans ce parcours, vous surlignez des prix, des e-mails et des dates dans de vrais extraits, et validez quelques formats en chemin.
Entraînez-vous sur du texte qui ressemble à vos propres données. Copiez quelques vraies lignes, gardez les plus bancales, et regardez ce que votre motif surligne autant que ce qu'il rate. Un motif qui marche sur trois lignes bien propres échoue souvent sur la quatrième.
Exemples
Attrapés
- ERROR disk full
- WARN slow query
Épargnés
- INFO user saw ERROR
- WARNING: low disk
Le
^garde le niveau en début de ligne, et\bempêcheWARNINGde passer pourWARN.Attrapés
- Order ORD-20481
- ref ORD-1234 paid
Épargnés
- ORD-12
- WORD-5000
\bécarteWORD-5000, et{4,}exige au moins quatre chiffres.Attrapés
- save 15%
- VAT 7.5%
- tax 7,5%
Épargnés
- 15 percent
- page 2
Le groupe facultatif lit
15%,7.5%et la forme européenne7,5%avec un seul motif.Attrapés
- Re: invoice
- FWD: menu
- fw: slides
Épargnés
- Review: draft
- Invoice re: May
Le marqueur
icouvreRe,REetre, et^ignore unre:au milieu de l'objet d'un message.
Erreurs courantes
- Trouver une correspondance dans quelque chose de plus long.
\d{4}trouve une année, mais aussi quatre chiffres au milieu d'un numéro de téléphone ou d'un identifiant de commande ; ajoutez\bou le texte qui l'entoure pour le délimiter. - Laisser `. *
s'emballer. Il est gourmand : sur une ligne avec deux paires de parenthèses,\(.*\)prend tout, de la première(à la dernière); une classe comme[^)]*` s'arrête à la première. - Ne tester que les lignes propres. Les vraies données ont des espaces en trop, des casses mélangées et des champs manquants : testez aussi les lignes moches et décidez lesquelles vous voulez épargner.
S'entraîner : Formats du monde réel →
À lire aussi : Validateurs du monde réel →
À lire aussi : Regex d'e-mail : des motifs prêts à copier qui marchent vraiment →
À lire aussi : Regex pour les numéros de téléphone : formats américains, E.164, et quand s'arrêter →