Administrator
This teaching view is for the instructor. Enter the administrator password.
Wrong password · Mot de passe incorrect
Key pointsL'essentiel
Repetition and groupsRépétition et groupes
Braces count the repetitions of the element in front of them: {n} exactly n times, {n,} at least n times, {n,m} between n and m times.
Les accolades comptent les répétitions de l'élément qui précède : {n} exactement n fois, {n,} au moins n fois, {n,m} entre n et m fois.
Key pointsL'essentiel
Repetition and groupsRépétition et groupes
Three shorthand cover the frequent cases: * (0 or more), + (1 or more), ? (0 or 1, so optional).
Trois abrégés couvrent les cas fréquents : * (0 ou plus), + (1 ou plus), ? (0 ou 1, donc optionnel).
Key pointsL'essentiel
Repetition and groupsRépétition et groupes
Parentheses group several elements so that a quantifier applies to them as one block.
Les parenthèses groupent plusieurs éléments pour leur appliquer un quantificateur d'un seul bloc.
Key pointsL'essentiel
Repetition and groupsRépétition et groupes
The vertical bar separates alternatives, and a group is what limits how far it reaches: /^(cat|dog)$/.
La barre verticale sépare des possibilités, et c'est un groupe qui en limite la portée : /^(chat|chien)$/.
Key pointsL'essentiel
Repetition and groupsRépétition et groupes
Quantifiers are greedy by default; a ? makes them lazy, which is what a pattern with an opening and a closing delimiter needs.
Les quantificateurs sont gourmands par défaut ; un ? les rend non gourmands, ce qu'il faut dès qu'un motif a un délimiteur ouvrant et un délimiteur fermant.
Page 1Page 1
Counted repetition: {n}, {n,m}Répétitions comptées : {n}, {n,m}
- Braces state how many times the preceding element repeats: {n} exactly n times, {n,} at least n times, {n,m} between n and m times.
- \d{3} and \d\d\d produce the same matches; the brace version reads better and is easier to change.
- A applies to the element in front of it, one element only: \d{3} counts digits, not what came before them.
- Les accolades précisent le nombre de répétitions de l'élément précédent : {n} exactement n fois, {n,} au moins n fois, {n,m} entre n et m fois.
- \d{3} et \d\d\d donnent les mêmes correspondances ; la version en accolades est plus lisible et plus facile à modifier.
- Un porte sur l'élément qui le précède, un seul : \d{3} compte les chiffres, pas ce qui vient avant.
Page 2Page 2
Shorthand quantifiers: *, +, ?Quantificateurs abrégés : *, +, ?
- Three shorthands cover the most common repetitions: (0 or more), + (1 or more), ? (0 or 1, so optional).
- colou?r finds "color" and "colour": the ? makes the "u" optional.
- It is good practice to use the shorthands rather than their brace equivalents: + rather than {1,}.
- Trois raccourcis couvrent les répétitions les plus courantes : (0 ou plus), + (1 ou plus), ? (0 ou 1, donc optionnel).
- colou?r trouve « color » et « colour » : le ? rend le « u » optionnel.
- C'est une bonne pratique d'utiliser les raccourcis plutôt que leurs équivalents en accolades : + plutôt que {1,}.
Page 3Page 3
Groups: (...)Les groupes : (...)
- Parentheses group several elements so that a applies to them as one block.
- /(ha)+/ finds "ha", "haha", "hahaha"; /(anti)?virus/ finds "virus" and "antivirus".
- A group also makes a whole portion of the pattern optional, which no quantifier can do on its own.
- Les parenthèses groupent plusieurs éléments pour leur appliquer un d'un seul bloc.
- /(ha)+/ trouve « ha », « haha », « hahaha » ; /(anti)?virus/ trouve « virus » et « antivirus ».
- Un groupe rend aussi optionnelle une partie entière du motif, ce qu'aucun quantificateur seul ne peut faire.
Page 4Page 4
Alternation: |L'alternative : |
- The vertical bar separates possibilities: /cat|dog/ finds either one.
- Without parentheses, the alternation reaches over everything around it, out to the edges of the expression: it is the last operator to be read.
- Combined with a , it writes the shared part once: /translat(ion|or)/.
- La barre verticale sépare des possibilités : /chat|chien/ trouve l'un ou l'autre.
- Sans parenthèses, l'alternative porte sur tout ce qui l'entoure, jusqu'aux bords de l'expression : c'est le dernier opérateur à être lu.
- Combinée à un , elle écrit la partie commune une seule fois : /traduct(ion|eur)/.
Page 5Page 5
Greedy or lazyGourmand ou non gourmand
- By default, quantifiers are greedy: they take as many characters as they can.
- A ? placed after the quantifier makes it lazy: it then takes as few as it can.
- Whenever a pattern has an opening and a closing delimiter (, quotation marks, parentheses), the lazy version is nearly always the one you want.
- Par défaut, les quantificateurs sont gourmands : ils capturent le plus de caractères possible.
- Un ? placé après le quantificateur le rend non gourmand : il capture alors le moins possible.
- Dès qu'un motif a un délimiteur d'ouverture et un de fermeture (, guillemets, parenthèses), c'est presque toujours la version non gourmande qu'il faut.
Page 5Page 5