Quantificateurs
Contrôlez combien de fois un élément se répète — de « peut-être une fois » à « exactement trois » — avec ?, *, +, {n,m} et leurs formes gourmandes ou paresseuses.
Lire les règles : Quantificateurs dans le Guide →S'entraîner : Carrière des quantificateurs →
Fait suite à Classes de caractères
Ce que vous allez apprendre
Étapes · 13
- 01Combien ?Briefing
- 02Zéro ou plusChasse
- 03Un ou plusChasse
- 04FacultatifChasse
- 05Exactement nChasse
- 06n ou plusChasse
- 07Un intervalleChasse
- 08Répéter une classeChasse
- 09Assembler les piècesChasse
- 10Gourmand par défautChasse
- 11Le rendre paresseuxChasse
- 12Golf : nombres entiersChasse
- 13Quantificateurs maîtrisésBriefing
Quantificateurs regex : ?, *, + et {n,m}
Un quantificateur indique à une regex combien de fois l'élément qui le précède peut se répéter. Sans quantificateur, chaque lettre, point ou classe correspond exactement une fois. Avec un quantificateur, un seul élément peut s'étirer sur une suite de caractères, ou devenir facultatif.
Il y a quatre formes à connaître. ? veut dire zéro ou une fois : il rend un élément facultatif. * veut dire zéro fois ou plus, et + une fois ou plus. Les accolades donnent des nombres exacts : {3} vaut exactement trois, {2,} deux ou plus, et {1,3} entre un et trois. Un quantificateur s'applique à une lettre seule, à une classe comme [a-z] ou à un groupe entre parenthèses.
Par défaut, les quantificateurs sont gourmands : ils prennent autant de caractères que possible et n'en rendent que si la suite du motif en a besoin. Ajoutez un ? après un quantificateur, comme dans +? ou *?, et il devient paresseux : il en prend le moins possible. Dans une chasse, les quantificateurs permettent à un seul motif court d'attraper des mots de longueurs différentes tout en épargnant ceux qui sortent du compte.
Exemples
Attrapés
- goal
- gooooal
Épargnés
- gal
- gaol
+exige au moins un o, mais en accepte autant que vous voulez.Attrapés
- http:
- https:
Épargnés
- htt:
- ftp:
?rend le s facultatif : les deux préfixes passent.Attrapés
- loop
- looop
Épargnés
- lop
- loooop
Les accolades fixent une fourchette : deux ou trois o entre le l et le p, ni plus ni moins.
Attrapés
- .5
- 3.14
- 10.0
Épargnés
- 3.
- 314
*permet à la partie entière de manquer, tandis que+exige au moins un chiffre après le point.
Erreurs courantes
- Croire qu'un quantificateur répète un mot entier.
ha+ne répète que le a (haaa) ; entourez la partie d'un groupe,(ha)+, pour répéterhaha. - Laisser un `. *
gourmand aller trop loin. Sur"a" and "b", le motif".*"s'étend du premier guillemet au dernier ; utilisez".*?"ou"[^"]*"` pour vous arrêter au plus proche. - Oublier que
*accepte zéro occurrence.x*correspond à toutes les chaînes, même sans aucun x : utilisez+quand il faut au moins une occurrence.
Lire les règles : Quantificateurs dans le Guide →S'entraîner : Carrière des quantificateurs →
À lire aussi : Quantificateurs gourmands ou paresseux : pourquoi .* en avale trop →