Expressões Regulares JavaScript

As expressões regulares são constituídas por uma sequência de caracteres que formam o padrão de busca.

Este padrão de busca pode ser usado em operações de busca de texto e substituição de texto.

O que é uma expressão regular?

As expressões regulares são constituídas porPadrão de busca (search pattern)sequência de caracteres.

Quando você busca dados no texto, você pode usar o padrão de busca para descrever o que você está buscando.

As expressões regulares podem ser um único caractere, ou um padrão mais complexo.

As expressões regulares podem ser usadas para executar todos os tipos deBusca de textoeSubstituição de textooperações.

sintaxe

/padrão/modificadores;

Exemplo

var patt = /codew3c/i;

Exemplo de explicação:

/codew3c/i É uma expressão regular.

codew3c É o padrão (pattern) (usado na busca).

Modificador São modificadores (modificam a busca para ser insensível a maiúsculas e minúsculas).

Usar métodos de string

No JavaScript, as expressões regulares são frequentemente usadas em doisMétodos de string:search() e Use o método de string replace() para manipular strings.

search() O método usa a expressão para buscar correspondências e então retorna a posição da correspondência.

Use o método de string replace() para manipular strings O método retorna a string modificada no local do padrão substituído.

Usar o método de string search() para manipular strings

search() O método também aceita uma string como parâmetro de busca. O parâmetro de string será convertido em expressão regular:

Exemplo

Usar uma string para executar a busca por "W3school":

var str = "Visite CodeW3C.com!";
var n = str.search("W3School"); 

Experimente por Si Mesmo

Usar expressões regulares em métodos de string search()

Exemplo

Executar uma busca não sensível a maiúsculas e minúsculas no texto "codew3c" usando expressões regulares:

var str = "Visit CodeW3C.com";
var str = "Visit CodeW3C.com"; 

var n = str.search(/codew3c/i);

O resultado de 'n' será:

Experimente por Si Mesmo

6

Use o método de string replace() para manipular strings replace()

Substitua 'Microsoft' por 'W3school' usando expressão regular insensível a maiúsculas e minúsculas na string:
Também aceita strings como parâmetros de busca: 

Experimente por Si Mesmo

var res = str.replace("Microsoft", "W3School");

Exemplo

Usar expressão regular insensível a maiúsculas e minúsculas no método replace() da string

Substitua 'Microsoft' por 'W3school' usando expressão regular insensível a maiúsculas e minúsculas na string:
var str = "Visit Microsoft!"; 

var res = str.replace(/microsoft/i, "W3School");

O resultado de 'res' será:

Experimente por Si Mesmo

Visite CodeW3C.com!

Você notou?

Parâmetros de expressão regular (ao invés de parâmetros de string) podem ser usados nos métodos acima.

Expressão regular pode tornar sua busca mais poderosa (por exemplo, insensível a maiúsculas e minúsculas).

Pode ser usado para uma busca mais global insensível a maiúsculas e minúsculas:Modificador de expressão regular

Pode ser usado para uma busca mais global insensível a maiúsculas e minúsculas: Descrição Experimente
Modificador Executar correspondência insensível a maiúsculas e minúsculas. Experimente
g Executar correspondência global (procurar todas as correspondências ao invés de parar após encontrar a primeira correspondência). Experimente
m Executar correspondência em linhas múltiplas. Experimente

Padrão de expressão regular

ParentesesUsada para encontrar strings dentro de um determinado intervalo:

Expressão Descrição Experimente
[abc] Encontre qualquer caractere entre colchetes. Experimente
[0-9] Encontre qualquer número de 0 a 9. Experimente
(x|y) Encontre qualquer opção separada por '|'. Experimente

Caracteres meta (Metacharacter)São caracteres que possuem significado especial:

Caracteres meta Descrição Experimente
\d Encontre números. Experimente
\s Encontre caracteres de espaço em branco. Experimente
\b Coincide com a borda de palavra. Experimente
\uxxxx Encontre caracteres Unicode definidos pelo número hexadecimal xxxx. Experimente

Quantifiers Defina o quantificador:

Quantificador Descrição Experimente
n+ Coincide com qualquer string que contenha pelo menos um 'n'. Experimente
n* Coincide com qualquer string que contenha zero ou mais 'n'. Experimente
n? Coincide com qualquer string que contenha zero ou um 'n'. Experimente

Use o objeto RegExp

No JavaScript, o objeto RegExp é um objeto de expressão regular com atributos e métodos pré-definidos.

Use test()

test() É um método de expressão regular.

Ele busca strings por padrão e então retorna true ou false com base no resultado.

O exemplo a seguir busca o caractere "e" na string:

Exemplo

var patt = /e/;
patt.test("As melhores coisas na vida são grátis!"); 

Devido à presença de um "e" na string, a saída do código acima será:

true

Experimente por Si Mesmo

Você não precisa primeiro colocar a expressão regular em uma variável. As duas linhas acima podem ser abreviadas para uma linha:

/e/.test("As melhores coisas na vida são grátis!");

Usando exec()

exec() Método é um método de expressão regular.

Ele pesquisa a string através do padrão especificado (pattern) e retorna o texto encontrado.

Se não encontrar correspondências, retornará null.

O exemplo a seguir busca o caractere "e" na string:

Exemplo

/e/.exec("As melhores coisas na vida são grátis!");

Devido à presença de um "e" na string, a saída do código acima será:

e

Experimente por Si Mesmo

Referência Completa RegExp

Para uma referência completa, acesse nossa referência completa Manual de Referência RegExp JavaScript.

Este manual de referência contém descrições e exemplos de todas as propriedades e métodos do RegExp.