ES6 - RegExp

Uma expressão regular é um objeto que descreve um padrão de caracteres. As expressões regulares são frequentemente abreviadas como “regex”Ou“regexp”.

O JavaScript RegExp classe representa expressões regulares, e tanto String quanto RegExp definem métodos que usam expressões regulares para executar funções poderosas de correspondência de padrões e pesquisa e substituição no texto.

Uma expressão regular pode ser definida como -

var pattern = new RegExp(pattern, attributes); 
OR 
var pattern = /pattern/attributes;

O atributo pode ter qualquer combinação dos seguintes valores.

Sr. Não Atributo e descrição
1

G

Jogo Global

2

I

Ignorar caso

3

M

Multiline; trate os caracteres de início e fim (^ e $) como trabalhando em várias linhas (ou seja, coincidir com o início ou o fim de cada linha (delimitado por \ n ou \ r), não apenas o início ou o fim de toda a string de entrada )

4

U

Unicode; trate o padrão como uma sequência de pontos de código Unicode

5

Y

Pegajoso; corresponde apenas ao índice indicado pela propriedade lastIndex desta expressão regular na string de destino (e não tenta corresponder a nenhum índice posterior)

Construindo Expressões Regulares

Colchetes

Os colchetes ([]) têm um significado especial quando usados ​​no contexto de expressões regulares. Eles são usados ​​para encontrar uma variedade de caracteres.

Sr. Não Expressão e Descrição
1

[...]

Qualquer caractere entre colchetes

2

[^...]

Qualquer caractere que não esteja entre colchetes

3

[0-9]

Corresponde a qualquer dígito decimal de 0 a 9

4

[a-z]

Corresponde a qualquer caractere de minúsculas a por meio de minúsculas z

5

[A-Z]

Corresponde a qualquer caractere em maiúsculas A até Z maiúsculo

6

[a-Z]

Corresponde a qualquer caractere de minúsculas a até Z maiúsculo

Os intervalos mostrados acima são gerais; você também pode usar o intervalo [0-3] para corresponder a qualquer dígito decimal de 0 a 3 ou o intervalo [bv] para corresponder a qualquer caractere minúsculo de b a v.

Quantificadores

A frequência ou posição das sequências de caracteres entre colchetes e os caracteres únicos podem ser denotados por um caractere especial. Cada personagem especial tem uma conotação específica. o+, *, ?, e $ todos os sinalizadores seguem uma sequência de caracteres.

Sr. Não Expressão e Descrição
1

p+

Corresponde a qualquer string contendo pelo menos um p.

2

p*

Corresponde a qualquer string contendo zero ou mais p's

3

p?

Corresponde a qualquer string contendo um ou mais p's

4

p{N}

Corresponde a qualquer string contendo uma sequência de N p's

5

p{2,3}

Corresponde a qualquer string contendo uma sequência de dois ou três p's

6

p{2, }

Corresponde a qualquer string contendo uma sequência de pelo menos dois p's

7

p$

Corresponde a qualquer string com p no final disso

8

^p

Corresponde a qualquer string com p no começo disso

9

[^a-zA-Z]

Corresponde a qualquer string que não contenha nenhum dos caracteres desde a através z e A através Z

10

p.p

Corresponde a qualquer string contendo p, seguido por qualquer caractere, por sua vez, seguido por outro p

11

^.{2}$

Corresponde a qualquer string contendo exatamente dois caracteres

12

<b>(.*)</b>

Corresponde a qualquer string entre <b> e </b>

13

p(hp)*

Corresponde a qualquer string contendo um p seguido por zero ou mais instâncias da sequência hp

Caracteres literais

Sr. Não Descrição do personagem
1

Alphanumeric

Em si

2

\0

O caractere NULL (\ u0000)

3

\t

Guia (\ u0009)

4

\n

Newline (\ u000A)

5

\v

Guia vertical (\ u000B)

6

\f

Feed de formulário (\ u000C)

7

\r

Retorno de carro (\ u000D)

8

\xnn

O caractere latino especificado pelo número hexadecimal nn; por exemplo, \ x0A é o mesmo que \n

9

\uxxxx

O caractere Unicode especificado pelo número hexadecimal xxxx; por exemplo, \ u0009 é o mesmo que\t

10

\cX

O caractere de controle ^ X; por exemplo, \ cJ é equivalente ao caractere de nova linha\n

Metacaracteres

UMA meta-character é simplesmente um caractere alfabético precedido por uma barra invertida que atua para dar à combinação um significado especial.

Por exemplo, você pode pesquisar uma grande quantia de dinheiro usando o '\d'metacaractere: / ([\ d] +) 000 /. Aqui,\d irá procurar por qualquer string do caractere numérico.

A tabela a seguir lista um conjunto de metacaracteres que podem ser usados ​​em expressões regulares de estilo PERL.

Sr. Não Descrição do personagem
1

.

Um único personagem

2

\s

Um caractere de espaço em branco (espaço, tabulação, nova linha)

3

\S

Caractere sem espaço em branco

4

\d

Um dígito (0-9)

5

\D

Um não-dígito

6

\w

Um caractere de palavra (az, AZ, 0-9, _)

7

\W

Um caractere não verbal

8

[\b]

Um backspace literal (caso especial)

9

[aeiou]

Corresponde a um único caractere no conjunto fornecido

10

[^aeiou]

Corresponde a um único caractere fora do conjunto fornecido

11

(foo|bar|baz)

Corresponde a qualquer uma das alternativas especificadas

Propriedades RegExp

Sr. Não Propriedades e descrição
1 RegExp.prototype.flags

Uma string que contém os sinalizadores do objeto RegExp

2 RegExp.prototype.global

Se deve testar a expressão regular com todas as correspondências possíveis em uma string ou apenas com a primeira

3 RegExp.prototype.ignoreCase

Se deve ignorar maiúsculas e minúsculas ao tentar uma correspondência em uma string

4 RegExp.prototype.lastIndex

Se propriedade de leitura / gravação de objetos RegExp.

5 RegExp.prototype.multiline

Se deve ou não pesquisar em strings em várias linhas

6 RegExp.prototype.source

O texto do padrão

Métodos RegExp

Sr. Não Método e Descrição
1 RegExp.prototype.exec ()

Executa uma pesquisa por uma correspondência em seu parâmetro de string

2 RegExp.prototype.test ()

Testa uma correspondência em seu parâmetro de string

3 RegExp.prototype.match ()

Executa uma correspondência com a string dada e retorna o resultado da correspondência

4 RegExp.prototype.replace ()

Substitui correspondências na string fornecida por uma nova substring

5 RegExp.prototype.search ()

Procura a correspondência na string dada e retorna o índice do padrão encontrado na string

6 RegExp.prototype.split ()

Divide a string fornecida em uma matriz, separando a string em substring

7 RegExp.prototype.toString ()

Retorna uma string que representa o objeto especificado. Substitui o métodoObject.prototype.toString ()