You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 9-regular-expressions/01-regexp-introduction/article.md
+20-20Lines changed: 20 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,7 @@ regexp = /padrão/; // sem flags
23
23
regexp =/padrão/gmi; // com flags `g`, `m` e `i` (a ser abordado em breve)
24
24
```
25
25
26
-
Barras `padrão:/.../` informam ao JavaScript que estamos criando uma expressão regular. Eles desempenham o mesmo papel que aspas para strings.
26
+
Barras `pattern:/.../` informam ao JavaScript que estamos criando uma expressão regular. Eles desempenham o mesmo papel que aspas para strings.
27
27
28
28
Em ambos os casos, a `regexp` se torna numa instância da classe interna `RegExp`.
29
29
@@ -43,30 +43,30 @@ Expressões regulares podem ter flags que afetam a pesquisa.
43
43
44
44
Existem apenas 6 delas em JavaScript:
45
45
46
-
`padrão:i`
46
+
`pattern:i`
47
47
: Com essa flag, a pesquisa não diferencia maiúsculas de minúsculas: não há diferença entre `A` e `a` (veja o exemplo abaixo).
48
48
49
-
`padrão:g`
49
+
`pattern:g`
50
50
: Com essa flag, a pesquisa procura todas as correspondências, sem ela - somente a primeira correspondência é retornada.
51
51
52
-
`padrão:m`
52
+
`pattern:m`
53
53
: Modo multilinha (abordado no capítulo <info:regexp-multiline-mode>).
54
54
55
-
`padrão:s`
56
-
: Ativa o modo "dotall", que permite que um ponto `padrão:.` corresponda ao caractere de nova linha `\n` (abordado no capítulo <info:regexp-character-classes>).
55
+
`pattern:s`
56
+
: Ativa o modo "dotall", que permite que um ponto `pattern:.` corresponda ao caractere de nova linha `\n` (abordado no capítulo <info:regexp-character-classes>).
57
57
58
-
`padrão:u`
58
+
`pattern:u`
59
59
: Ativa o suporte completo de Unicode. A flag permite o processamento correto de pares substitutos. Mais sobre isso no capítulo <info:regexp-unicode>.
60
60
61
-
`padrão:y`
61
+
`pattern:y`
62
62
: Modo "fixo": pesquisando na posição exata no texto (abordado no capítulo <info:regexp-sticky>)
63
63
64
64
```smart header="Cores"
65
65
A partir daqui, o esquema de cores é:
66
66
67
-
- regexp -- `padrão:vermelho`
68
-
- string (onde pesquisamos) -- `fonte:azul`
69
-
- result -- `correspondência:verde`
67
+
- regexp -- `pattern:vermelho`
68
+
- string (onde pesquisamos) -- `subject:azul`
69
+
- result -- `match:verde`
70
70
```
71
71
72
72
## Pesquisando: str.match
@@ -77,13 +77,13 @@ O método `str.match(regexp)` encontra todas as correspondências de `regexp` na
77
77
78
78
Possui 3 modos de trabalho:
79
79
80
-
1. Se a expressão regular tiver flag `padrão:g`, ela retornará uma matriz de todas as correspondências:
80
+
1. Se a expressão regular tiver flag `pattern:g`, ela retornará uma matriz de todas as correspondências:
81
81
```js run
82
82
let str ="Nós vamos, nós vamos sacudir você";
83
83
84
84
alert( str.match(/nós/gi) ); // Nós, nós (uma matriz de 2 substrings que correspondem)
85
85
```
86
-
Observe que ambas `correspondência:Nós` e `correspondência:nós` são encontradas, porque flag `padrão:i` torna a expressão regular sem distinção entre maiúsculas e minúsculas.
86
+
Observe que ambas `match:Nós` e `match:nós` são encontradas, porque flag `pattern:i` torna a expressão regular sem distinção entre maiúsculas e minúsculas.
87
87
88
88
2. Se não houver essa flag, ela retornará apenas a primeira correspondência na forma de uma matriz, com a correspondência completa no índice `0` e alguns detalhes adicionais nas propriedades:
89
89
```js run
@@ -100,7 +100,7 @@ Possui 3 modos de trabalho:
100
100
```
101
101
A matriz pode ter outros índices, além de `0` se uma parte da expressão regular estiver entre parênteses. Abordaremos isso no capítulo <info:regexp-groups>.
102
102
103
-
3.E, finalmente, se não houver correspondências, `null` é retornado (não importa se há flags `padrão:g` ou não).
103
+
3.E, finalmente, se não houver correspondências, `null` é retornado (não importa se há flags `pattern:g` ou não).
104
104
105
105
Esta é uma nuance muito importante. Se não houver correspondências, não receberemos uma matriz vazia, mas receberemos `null`. Esquecer isso pode levar a erros, por exemplo:
106
106
@@ -124,7 +124,7 @@ Possui 3 modos de trabalho:
124
124
125
125
## Substituindo:str.replace
126
126
127
-
O método `str.replace(regexp, substituição)` substitui as correspondências encontradas usando `regexp` na string ` str` por `substituição` (todas as correspondências se houver flag `padrão:g`, caso contrário, apenas a primeira).
127
+
O método `str.replace(regexp, substituição)` substitui as correspondências encontradas usando `regexp` na string ` str` por `substituição` (todas as correspondências se houver flag `pattern:g`, caso contrário, apenas a primeira).
128
128
129
129
Por exemplo:
130
130
@@ -147,10 +147,10 @@ O segundo argumento é a string de `substituição`. Podemos usar combinações
147
147
|`$<nome>`|insere o conteúdo dos parênteses com o `nome` fornecido, mais sobre isso no capítulo <info:regexp-groups>|
148
148
|`$$`|insere o caractere `$`|
149
149
150
-
Um exemplo com o `padrão:$&`:
150
+
Um exemplo com o `pattern:$&`:
151
151
152
152
```js run
153
-
alert( "Eu amo HTML".replace(/HTML/, "$& and JavaScript") ); // Eu amo HTML and JavaScript
153
+
alert( "Eu amo HTML".replace(/HTML/, "$& e JavaScript") ); // Eu amo HTML e JavaScript
154
154
```
155
155
156
156
## Teste:regexp.test
@@ -170,8 +170,8 @@ Informações completas sobre os métodos são fornecidas no artigo <info:regexp
170
170
171
171
## Resumo
172
172
173
-
- Uma expressão regular consiste em um padrão e flags opcionais:`padrão:g`, `padrão:i`, `padrão:m`, `padrão:u`, `padrão:s`, `padrão:y`.
173
+
- Uma expressão regular consiste em um padrão e flags opcionais:`pattern:g`, `pattern:i`, `pattern:m`, `pattern:u`, `pattern:s`, `pattern:y`.
174
174
- Sem flags e símbolos especiais (que estudaremos mais adiante), a pesquisa por uma regexp é igual à pesquisa com substring.
175
-
-O método `str.match(regexp)` procura por correspondências: todas elas se houver a flag `padrão:g`, caso contrário, apenas a primeira.
176
-
-O método `str.replace(regexp, substituição)` substitui as correspondências encontradas usando `regexp` por 'substituição': todas elas se houver uma flag `padrão:g`, caso contrário, somente a primeira.
175
+
-O método `str.match(regexp)` procura por correspondências: todas elas se houver a flag `pattern:g`, caso contrário, apenas a primeira.
176
+
-O método `str.replace(regexp, substituição)` substitui as correspondências encontradas usando `regexp` por 'substituição': todas elas se houver uma flag `pattern:g`, caso contrário, somente a primeira.
177
177
-O método `regexp.test(str)` retorna `true` se houver pelo menos uma correspondência, caso contrário, retorna `false`.
0 commit comments