Skip to content

Commit bc5c506

Browse files
Minor corrections
1 parent 440319f commit bc5c506

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

9-regular-expressions/03-regexp-unicode/article.md

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Ainsi, les caractères comme `a` et `≈` occupent 2 octets, tandis que les code
1818

1919
Il y a longtemps, lorsque le langage JavaScript a été créé, l'encodage Unicode était plus simple : il n'y avait pas de caractères à 4 octets. Ainsi, certaines fonctionnalités du langage les gèrent toujours de manière incorrecte.
2020

21-
Par exemple, la propriété `length` pense qu'il y a deux caractères:
21+
Par exemple, la propriété `length` pense qu'il y a deux caractères :
2222

2323
```js run
2424
alert('😄'.length); // 2
@@ -47,7 +47,7 @@ Nous pouvons rechercher des caractères avec une propriété, écrite sous la fo
4747

4848
Par exemple, `\p{Letter}` désigne une lettre dans n'importe quelle langue. Nous pouvons également utiliser `\p{L}`, car `L` est un alias de `Letter` (Lettre). Il existe des alias plus courts pour presque toutes les propriétés.
4949

50-
Dans l'exemple ci-dessous, on trouvera trois types de lettres: Anglais, Géorgien et Coréen.
50+
Dans l'exemple ci-dessous, on trouvera trois types de lettres : Anglais, Géorgien et Coréen.
5151

5252
```js run
5353
let str = "A ბ ㄱ";
@@ -56,40 +56,40 @@ alert( str.match(/\p{L}/gu) ); // A,ბ,ㄱ
5656
alert( str.match(/\p{L}/g) ); // null (aucune correspondance, puisqu'il n'y a pas l'indicateur "u")
5757
```
5858

59-
Voici les principales catégories de caractères et leurs sous-catégories:
59+
Voici les principales catégories de caractères et leurs sous-catégories :
6060

61-
- Lettre `L`:
61+
- Lettre `L` :
6262
- minuscules `Ll`,
6363
- modificateur `Lm`,
6464
- titre `Lt`,
6565
- majuscule `Lu`,
6666
- autres `Lo`.
67-
- Nombre `N`:
67+
- Nombre `N` :
6868
- chiffre décimal `Nd`,
6969
- numéro de lettre `Nl`,
7070
- autre `No`.
71-
- Ponctuation `P`:
71+
- Ponctuation `P` :
7272
- connecteur `Pc`,
7373
- tiret `Pd`,
7474
- citation initiale `Pi`,
7575
- citation finale `Pf`,
7676
- ponctuation ouvrante `Ps`,
7777
- ponctuation fermante `Pe`,
7878
- autre `Po`.
79-
- Marqueur `M` (accents, etc.):
79+
- Marqueur `M` (accents, etc.) :
8080
- espacement combinant `Mc`,
8181
- contenant `Me`,
8282
- sans espacement `Mn`.
83-
- Symbole `S`:
83+
- Symbole `S` :
8484
- devise `Sc`,
8585
- modificateur `Sk`,
8686
- mathématique `Sm`,
8787
- autre `So`.
88-
- Séparateur `Z`:
88+
- Séparateur `Z` :
8989
- ligne `Zl`,
9090
- paragraphe `Zp`,
9191
- espace `Zs`.
92-
- Autre `C`:
92+
- Autre `C` :
9393
- contrôle `Cc`,
9494
- format `Cf`,
9595
- non affecté `Cn`,
@@ -99,19 +99,19 @@ Voici les principales catégories de caractères et leurs sous-catégories:
9999

100100
Ainsi, par exemple si nous avons besoin de lettres en minuscules, nous pouvons écrire `pattern:\p{Ll}`, de signes de ponctuation : `pattern:\p{P}` et ainsi de suite.
101101

102-
Il existe également d'autres catégories dérivées, comme:
102+
Il existe également d'autres catégories dérivées, comme :
103103
- `Alphabetic` (Alphabétique)(`Alpha`), qui comprend les lettres `L`, plus les numéros de lettre `Nl` (par exemple Ⅻ - un caractère pour le chiffre romain 12), plus quelques autres symboles `Other_Alphabetic` (Autre alphabétiques)(`OAlpha`).
104104
- `Hex_Digit` comprend des chiffres hexadécimaux : `0-9`, `a-f`.
105105
- ...Et ainsi de suite.
106106

107-
Unicode prend en charge de nombreuses propriétés différentes, leur liste complète nécessiterait beaucoup d'espace, voici donc les références:
107+
Unicode prend en charge de nombreuses propriétés différentes, leur liste complète nécessiterait beaucoup d'espace, voici donc les références :
108108

109-
- Liste de toutes les propriétés par caractère: <https://unicode.org/cldr/utility/character.jsp>.
110-
- Liste de tous les caractères par propriété: <https://unicode.org/cldr/utility/list-unicodeset.jsp>.
111-
- Alias ​​courts pour les propriétés: <https://www.unicode.org/Public/UCD/latest/ucd/PropertyValueAliases.txt>.
109+
- Liste de toutes les propriétés par caractère : <https://unicode.org/cldr/utility/character.jsp>.
110+
- Liste de tous les caractères par propriété : <https://unicode.org/cldr/utility/list-unicodeset.jsp>.
111+
- Alias ​​courts pour les propriétés : <https://www.unicode.org/Public/UCD/latest/ucd/PropertyValueAliases.txt>.
112112
- Une base complète de caractères Unicode au format texte, avec toutes les propriétés, se trouve ici: <https://www.unicode.org/Public/UCD/latest/ucd/>.
113113

114-
### Exemple: nombres hexadécimaux
114+
### Exemple : nombres hexadécimaux
115115

116116
Par exemple, recherchons des nombres hexadécimaux, écrits sous la forme `xFF`, où `F` est un chiffre hexadécimal (0..1 ou A..F).
117117

@@ -123,13 +123,13 @@ let regexp = /x\p{Hex_Digit}\p{Hex_Digit}/u;
123123
alert("number: xAF".match(regexp)); // xAF
124124
```
125125

126-
### Exemple: Hiéroglyphes Chinois
126+
### Exemple : Hiéroglyphes Chinois
127127

128128
Cherchons des hiéroglyphes Chinois.
129129

130-
Il y a une propriété unicode `Script` (un système d'écriture), qui peut avoir une valeur: `Cyrillic` (Cyrillique), `Greek` (Grec),`Arabic` (Arabe), `Han` (Chinois) et ainsi de suite, [voici la liste complète](https://en.wikipedia.org/wiki/Script_(Unicode)).
130+
Il y a une propriété unicode `Script` (un système d'écriture), qui peut avoir une valeur : `Cyrillic` (Cyrillique), `Greek` (Grec),`Arabic` (Arabe), `Han` (Chinois) et ainsi de suite, [voici la liste complète]("https://en.wikipedia.org/wiki/Script_(Unicode)").
131131

132-
Pour rechercher des caractères dans un système d'écriture donné, nous devons utiliser `pattern:Script=<value>`, par exemple pour les lettres cyrilliques: `pattern:\p{sc=Cyrillic}`, pour les hiéroglyphes chinois: `pattern:\p{sc=Han}`, et ainsi de suite:
132+
Pour rechercher des caractères dans un système d'écriture donné, nous devons utiliser `pattern:Script=<value>`, par exemple pour les lettres cyrilliques : `pattern:\p{sc=Cyrillic}`, pour les hiéroglyphes chinois : `pattern:\p{sc=Han}`, et ainsi de suite :
133133

134134
```js run
135135
let regexp = /\p{sc=Han}/gu; // renvoie des hiéroglyphes Chinois
@@ -159,9 +159,9 @@ Plus loin, dans l'article <info:regexp-quantifiers>, nous verrons comment recher
159159

160160
L'indicateur `pattern:u` permet la prise en charge d'Unicode dans les expressions régulières.
161161

162-
Cela signifie deux choses:
162+
Cela signifie deux choses :
163163

164-
1. Les caractères de 4 octets sont traités correctement: comme un seul caractère, pas comme deux caractères de 2 octets.
165-
2. Les propriétés Unicode peuvent être utilisées dans la recherche: `\p{…}`.
164+
1. Les caractères de 4 octets sont traités correctement : comme un seul caractère, pas comme deux caractères de 2 octets.
165+
2. Les propriétés Unicode peuvent être utilisées dans la recherche : `\p{…}`.
166166

167167
Avec les propriétés Unicode, nous pouvons rechercher des mots dans des langues données, des caractères spéciaux (guillemets, devises) et ainsi de suite.

0 commit comments

Comments
 (0)