Skip to content

Commit 8764f77

Browse files
committed
avoid to repeat 'alphanumérique (ou un trait de soulignement)'
use correspond au modèle \w instead
1 parent c34488d commit 8764f77

File tree

1 file changed

+7
-7
lines changed
  • 9-regular-expressions/06-regexp-boundary

1 file changed

+7
-7
lines changed

9-regular-expressions/06-regexp-boundary/article.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# Limite de mot : \b
22

3-
Une limite de mot `pattern:\b` teste une position, comme les ancres `pattern:^` et `pattern:$`.
3+
Une limite de mot `pattern:\b` teste une position, de la même manière que les ancres `pattern:^` et `pattern:$`.
44

55
Quand le moteur d'expression rationnelle (module qui implémente la recherche d'expressions rationnelles) trouve le modèle `pattern:\b`, il vérifie si la position dans la chaine de caractères est une limite de mot.
66

77
Il y a trois positions possibles pour une limite de mot :
88

9-
- Au début de la chaîne de caractères, si le premier caractère est alphanumérique (ou un trait de soulignement) `pattern:\w`.
10-
- Entre deux caractères d'une chaîne, si un des caractères est alphanumérique (ou un trait de soulignement) `pattern:\w` et l'autre ne l'est pas.
11-
- À la fin de la chaîne de caractères, si le dernier caractère est alphanumérique (ou un trait de soulignement) `pattern:\w`.
9+
- Au début de la chaîne de caractères, si le premier caractère est alphanumérique (ou un trait de soulignement), c'est à dire qu'il correspond au modèle `pattern:\w`.
10+
- Entre deux caractères d'une chaîne, si seulement l'un des caractères correspond au modèle `pattern:\w`, (alphanumérique ou trait de soulignement).
11+
- À la fin de la chaîne de caractères, si le dernier caractère correspond au modèle `pattern:\w`.
1212

1313
Par exemple l'expression régulière `pattern:\bJava\b` sera trouvé dans `subject:Hello, Java!`, où `subject:Java` est un mot isolé, mais pas dans `subject:Hello, JavaScript!`.
1414

@@ -27,7 +27,7 @@ Cette chaîne passe le test du modèle `pattern:\bHello\b`, car :
2727
2. Puis trouve le mot `pattern:Hello`.
2828
3. Enfin le test `pattern:\b` est encore valide, comme nous sommes entre `subject:o` et une virgule.
2929

30-
Donc le modèle `pattern:\bHello\b` sera trouvé, mais pas `pattern:\bHell\b` (car il n'y a pas de limite de mot après `l`) ni `Java!\b` (car le point d'exclamation n'est pas alphanumérique (ou trait de soulignement) `pattern:\w`, il n'est donc pas suivi par une limite de mot).
30+
Donc le modèle `pattern:\bHello\b` sera trouvé, mais pas `pattern:\bHell\b` (car il n'y a pas de limite de mot après `l`) ni `Java!\b` (car le point d'exclamation ne correspond pas au modèle `pattern:\w`, il n'est donc pas suivi par une limite de mot).
3131

3232
```js run
3333
alert( "Hello, Java!".match(/\bHello\b/) ); // Hello
@@ -38,7 +38,7 @@ alert( "Hello, Java!".match(/\bJava!\b/) ); // null (aucune correspondance)
3838

3939
La limite de mot `pattern:\b` ne s'utilise pas uniquement sur les mots, mais aussi pour les nombres.
4040

41-
Par exemple, le modèle `pattern:\b\d\d\b` recherche un nombre isolé à deux chiffres. C'est à dire, qu'il cherche un nombre à deux chiffres entouré par des caractères qui ne sont pas alphanumériques (ou traits de soulignement) `pattern:\w`, comme des espaces, une ponctuation, un début ou une fin de chaîne.
41+
Par exemple, le modèle `pattern:\b\d\d\b` recherche un nombre isolé à deux chiffres. C'est-à-dire, qu'il cherche un nombre à deux chiffres entouré par des caractères qui ne correspondent pas au modèle `pattern:\w`, comme des espaces, une ponctuation, un début ou une fin de chaîne.
4242

4343
```js run
4444
alert( "1 23 456 78".match(/\b\d\d\b/g) ); // 23,78
@@ -48,5 +48,5 @@ alert( "12,34,56".match(/\b\d\d\b/g) ); // 12,34,56
4848
```warn header="La limite de mot `pattern:\b` ne fonctionne pas pour des alphabets non latin"
4949
Le test de limite de mot `pattern:\b` vérifie qu'il doit y avoir `pattern:\w` d'un côté de la position et "not `pattern:\w`" - de l'autre côté.
5050

51-
Comme `pattern:\w` signifie `a-z`(en minuscule ou majuscule), un chiffre ou un trait de soulignement, donc le test ne fonctionne pas pour d'autres caractères, e.g. lettre cyrillique ou hiéroglyphe.
51+
Comme `pattern:\w` signifie `a-z`(en minuscule ou majuscule), un chiffre ou un trait de soulignement, le test ne fonctionne pas pour d'autres caractères, e.g. lettre cyrillique ou hiéroglyphe.
5252
```

0 commit comments

Comments
 (0)