Expressões regulares e objeto RegExp

Uma expressão regular é um objeto que descreve um padrão de caracteres.

O JavaScript RegExp classe representa expressões regulares, e tanto String quanto RegExp definir 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.

Sintaxe

Uma expressão regular pode ser definida com o RegExp () construtor, como segue -

var pattern = new RegExp(pattern, attributes);
or simply
var pattern = /pattern/attributes;

Aqui está a descrição dos parâmetros -

  • pattern - Uma string que especifica o padrão da expressão regular ou outra expressão regular.

  • attributes - Uma string opcional contendo qualquer um dos atributos "g", "i" e "m" que especificam correspondências globais, não diferenciam maiúsculas de minúsculas e multilinhas, respectivamente.

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 através de maiúsculas Z.

6

[a-Z]

Corresponde a qualquer caractere de minúsculas a através de maiúsculas Z.

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 variando deb através v.

Quantificadores

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

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

p+

Corresponde a qualquer string contendo um ou mais p's.

2

p*

Corresponde a qualquer string contendo zero ou mais p's.

3

p?

Corresponde a qualquer string contendo no máximo um p.

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 dela.

8

^p

Corresponde a qualquer string com p no início.

Exemplos

Os exemplos a seguir explicam mais sobre a correspondência de caracteres.

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

[^a-zA-Z]

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

2

p.p

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

3

^.{2}$

Corresponde a qualquer string contendo exatamente dois caracteres.

4

<b>(.*)</b>

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

5

p(hp)*

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

Personagens literais

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

Alphanumeric

Em si

2

\0

O caractere NUL (\ 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

Um metacaractere é 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 metacaractere '\ d': /([\d]+)000/, Aqui \d irá pesquisar por qualquer string de caracteres numéricos.

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 personagem 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

Modificadores

Vários modificadores estão disponíveis que podem simplificar a maneira como você trabalha com regexps, como distinção entre maiúsculas e minúsculas, pesquisa em várias linhas, etc.

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

i

Execute uma correspondência sem distinção entre maiúsculas e minúsculas.

2

m

Especifica que se a string tiver caracteres de nova linha ou de retorno de carro, os operadores ^ e $ agora corresponderão a um limite de nova linha, em vez de um limite de string

3

g

Executa uma correspondência global, ou seja, localiza todas as correspondências em vez de parar após a primeira correspondência.

Propriedades RegExp

Aqui está uma lista das propriedades associadas ao RegExp e suas descrições.

Sr. Não. Descrição da Propriedade
1 constructor

Specifies the function that creates an object's prototype.

2 global

Specifies if the "g" modifier is set.

3 ignoreCase

Specifies if the "i" modifier is set.

4 lastIndex

The index at which to start the next match.

5 multiline

Specifies if the "m" modifier is set.

6 source

The text of the pattern.

In the following sections, we will have a few examples to demonstrate the usage of RegExp properties.

RegExp Methods

Here is a list of the methods associated with RegExp along with their description.

Sr.No. Method & Description
1 exec()

Executes a search for a match in its string parameter.

2 test()

Tests for a match in its string parameter.

3 toSource()

Returns an object literal representing the specified object; you can use this value to create a new object.

4 toString()

Returns a string representing the specified object.

In the following sections, we will have a few examples to demonstrate the usage of RegExp methods.