Skip to content

Commit 01220a6

Browse files
committed
progress translation
1 parent ae45309 commit 01220a6

File tree

2 files changed

+8
-8
lines changed
  • 9-regular-expressions/08-regexp-character-sets-and-ranges

2 files changed

+8
-8
lines changed

9-regular-expressions/08-regexp-character-sets-and-ranges/2-find-time-2-formats/task.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
A string pode estar no formato `horas:minutos` ou `horas-minutos`. Ambas horas e minutos são compostas de 2 dígitos: `09:00` ou `21-30`.
44

5-
Escreva uma regex que case com o horário:
5+
Escreva uma expressão regular que corresponda ao horário:
66

77
```js
88
let regexp = /your regexp/g;

9-regular-expressions/08-regexp-character-sets-and-ranges/article.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ alert( "Exception 0xAF".match(/x[0-9A-F][0-9A-F]/g) ); // xAF
4444

4545
O padrão `pattern:[0-9A-F]` tem dois alcances: Ele casa com dígitos de `0` a `9` ou uma letra de `A` a `F`.
4646

47-
Se quisermos casar com letras minúsculas também, podemos adicionar o alcance `a-f` (`pattern:[0-9A-Fa-f]`), ou adicionar a flag `pattern:i`.
47+
Se quisermos casar com letras minúsculas também, podemos adicionar o alcance `a-f` (`pattern:[0-9A-Fa-f]`), ou adicionar a opção `pattern:i`.
4848

4949
Também podemos usar classes de caracteres dentro do `[…]`.
5050

@@ -144,9 +144,9 @@ let regexp = /[\-\(\)\.\^\+]/g;
144144
alert( "1 + 2 - 3".match(regexp) ); // Também casa: +, -
145145
```
146146

147-
## Alcances e a flag "u"
147+
## Alcances e a opção "u"
148148

149-
Se existem pares substitutos no conjunto, a flag `pattern:u` é obrigatória para garantir seu funcionamento correto.
149+
Se existem pares substitutos no conjunto, a opção `pattern:u` é obrigatória para garantir seu funcionamento correto.
150150

151151
No exemplo abaixo queremos casar com o padrão `pattern:[𝒳𝒴]` na string `subject:𝒳`:
152152

@@ -174,23 +174,23 @@ for(let i=0; i<'𝒳𝒴'.length; i++) {
174174

175175
Por conta disso, o exemplo acima casa apenas com a metade esquerda do `𝒳`.
176176

177-
Agora, se adicionarmos a flag `pattern:u`, o comportamento é o esperado:
177+
Agora, se adicionarmos a opção `pattern:u`, o comportamento é o esperado:
178178

179179
```js run
180180
alert( '𝒳'.match(/[𝒳𝒴]/u) ); // 𝒳
181181
```
182182

183183
Uma situação parecida acontece quando estamos buscando por um alcance, como `[𝒳-𝒴]`.
184184

185-
Se não usarmos a flag `pattern:u`, um erro ocorre:
185+
Se não usarmos a opção `pattern:u`, um erro ocorre:
186186

187187
```js run
188188
'𝒳'.match(/[𝒳-𝒴]/); // Error: Invalid regular expression (Expressão regular inválida)
189189
```
190190

191-
Isso ocorre porque sem a flag `pattern:u`, pares substitutos são percebidos como dois caracteres separados, então o alcance `[𝒳-𝒴]` é interpretado como `[<55349><56499>-<55349><56500>]` (cada par substituto é substituído pelos seus códigos constituintes). Dessa forma é fácil perceber que o alcance `56499-55349` é inválido: Seu código inicial `56499` é maior que seu código final, `55349`, causando o erro.
191+
Isso ocorre porque sem a opção `pattern:u`, pares substitutos são percebidos como dois caracteres separados, então o alcance `[𝒳-𝒴]` é interpretado como `[<55349><56499>-<55349><56500>]` (cada par substituto é substituído pelos seus códigos constituintes). Dessa forma é fácil perceber que o alcance `56499-55349` é inválido: Seu código inicial `56499` é maior que seu código final, `55349`, causando o erro.
192192

193-
Com a flag `pattern:u`, entretanto, o padrão funciona como esperado:
193+
Com a opção `pattern:u`, entretanto, o padrão funciona como esperado:
194194

195195
```js run
196196
// Case com caracteres entre 𝒳 e 𝒵

0 commit comments

Comments
 (0)