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
Isso acontece porque por padrão, o acento circunflexo `pattern:^`casa apenas com o começo da string -- e no modo multilinha no começo de cada linha.
35
+
Isso acontece porque por padrão, o acento circunflexo `pattern:^`corresponde apenas com o começo da string -- e no modo multilinha no começo de cada linha.
36
36
37
37
```smart
38
-
Formalmente, "começo de linha" quer dizer "imediatamente após uma quebra de linha": o teste `pattern:^` no modo multilinha casa todas as posições precedidas por um caractere de nova linha `\n`, bem como o início da string como um todo.
38
+
Formalmente, "começo de linha" quer dizer "imediatamente após uma quebra de linha": o teste `pattern:^` no modo multilinha corresponde a todas as posições precedidas por um caractere de nova linha `\n`, bem como o início da string como um todo.
39
39
```
40
40
41
41
## Busca no fim da linha $
42
42
43
43
O cifrão `pattern:$` se comporta de maneira similar.
44
44
45
-
A expressão regular `pattern:\d$`casa com o último dígito de cada linha
45
+
A expressão regular `pattern:\d$`corresponde ao último dígito de cada linha
46
46
47
47
```js run
48
48
let str =`Winnie: 1
@@ -52,10 +52,10 @@ Eeyore: 3`;
52
52
console.log( str.match(/\d$/gm) ); // 1,2,3
53
53
```
54
54
55
-
Sem a flag `pattern:m`, o cifrão `pattern:$`casaria apenas com o fim da string inteira, então apenas o último dígito seria encontrado.
55
+
Sem a flag `pattern:m`, o cifrão `pattern:$`corresponde apenas ao fim da string inteira, então apenas o último dígito seria encontrado.
56
56
57
57
```smart
58
-
Formalmente, "fim de linha" quer dizer "imediatamente antes de uma quebra de linha": o teste `pattern:$` no modo multilinha casa todas as posições sucedidas por um caracter de nova linha `\n`, bem como o fim da string como um todo.
58
+
Formalmente, "fim de linha" quer dizer "imediatamente antes de uma quebra de linha": o teste `pattern:$` no modo multilinha corresponde a todas as posições sucedidas por um caractere de nova linha `\n`, bem como o fim da string como um todo.
59
59
```
60
60
61
61
## Busca por \n ao invés de ^ e $
@@ -74,9 +74,9 @@ Eeyore: 3`;
74
74
console.log( str.match(/\d\n/g) ); // 1\n,2\n
75
75
```
76
76
77
-
Como podemos ver, temos dois casamentos ao invés de 3
77
+
Como podemos ver, temos duas correspondências ao invés de 3
78
78
79
-
Isso ocorre porque não há uma quebra de linha após o `subject:3` (Mas temos o fim da string, então ele casa com o `pattern:$`)
79
+
Isso ocorre porque não há uma quebra de linha após o `subject:3` (Mas temos o fim da string, então ele corresponde com o `pattern:$`)
80
80
81
81
Outra diferença: Agora cada correspondência inclui um caractere de nova linha `match:\n`. Diferentemente das âncoras `pattern:^` e `pattern:$`, que testam apenas a condição (início ou fim de uma linha), `\n` é um caractere, então ele se torna parte do resultado.
0 commit comments