Manual de Referência JavaScript RegExp

Objeto RegExp

Expressão regular é um padrão de caractere.

Este padrão é usado para funções de 'pesquisa e substituição' de correspondência de padrão de texto.

No JavaScript, o objeto RegExp é um objeto que possui propriedades e métodos.

Sintaxe

/pattern/modifier(s);

Exemplo

let pattern = /codew3c/i;

Experimente você mesmo

Exemplo de explicação:

codew3c Padrão a ser pesquisado
/codew3c/ Expressão regular
/codew3c/i Expressão regular insensível a maiúsculas e minúsculas

Para saber mais sobre expressões regulares, leia nosso Tutorial RegExp JavaScript.

Modificador

Os modificadores são usados para executar buscas sem distinção entre maiúsculas e minúsculas e globais:

Modificador Descrição
g Executar correspondência global (procurar todas as correspondências em vez de parar após a primeira correspondência).
i Executar correspondência sem distinção entre maiúsculas e minúsculas.
d Executar correspondência de substring.
m Executar correspondência de múltiplas linhas.

Colchetes

Os colchetes são usados para encontrar caracteres dentro de um intervalo:

Expressão Descrição
[abc] Encontre qualquer caractere entre parênteses.
[^abc] Encontre qualquer caractere que não esteja entre colchetes.
[0-9] Encontre qualquer número de 0 a 9.
[^0-9] Procurar qualquer caractere que não esteja entre parênteses (qualquer caractere não numérico).
(x|y) Procurar qualquer opção especificada.

Caracteres meta

Caracteres meta são caracteres que têm significado especial:

Caracteres meta Descrição
. Procurar caractere único, exceto o caractere de nova linha ou de terminação de linha.
\w Procurar caractere alfanumérico.
\W Procurar caractere não alfanumérico.
\d Procurar número.
\D Procurar caractere não numérico.
\s Procurar caractere branco.
\S Procurar caractere não branco.
\b Procurar o match no início ou fim da palavra, começando com: \bHI, terminando com: HI\b.
\B Procurar o match, mas não no início ou fim da palavra.
\0 Procurar o caractere NULL.
\n Procurar o caractere de nova linha.
\f Procurar o caractere de nova página.
\r Procurar o caractere de nova linha.
\t Procurar o caractere tabulação.
\v Procurar o caractere tabulação vertical.
\xxx Procurar o caractere especificado pelo número octal xxx.
\xdd Procurar o caractere especificado pelo número hexadecimal dd.
\udddd Procurar o caractere Unicode especificado pelo número hexadecimal xxxx.

Quantificadores

Quantificadores Descrição
n+ Corresponder a qualquer string que contenha pelo menos um n.
n* Corresponder a qualquer string que contenha zero ou mais n.
n? Corresponder a qualquer string que contenha zero ou um n.
n{X} Corresponder a qualquer string que contenha X n.
n{X,Y} Corresponder a qualquer string que contenha de X a Y n.
n{X,} Corresponder a qualquer string que contenha pelo menos X n.
n$ Corresponder a qualquer string que acabe com n.
^n Corresponder a qualquer string que comece com n.
?=n Corresponder a qualquer string que tenha o caractere n imediatamente após.
?!n Corresponder a qualquer string que não tenha o caractere n imediatamente após.

Atributos do objeto RegExp

Atributos Descrição
constructor Retornar a função que cria o protótipo do objeto RegExp.
global Verificar se o modificador "g" foi definido.
ignoreCase Verificar se o modificador "i" foi definido.
lastIndex Definir o índice de início do próximo match.
multiline Verificar se o modificador "m" foi definido.
source Retornar o texto do padrão RegExp.

Métodos do objeto RegExp

Método Descrição
compile() Descontinuado na versão 1.5. Compilar expressão regular.
exec() Testar itens de uma string. Retornar o primeiro item correspondente.
test() Testar itens de uma string. Retornar true ou false.
toString() Retorna o valor de string da expressão regular.

Descrição do objeto RegExp

O objeto RegExp representa uma expressão regular, é uma ferramenta poderosa para realizar correspondência de padrão em strings.

Sintaxe literal

/pattern/attributes

Sintaxe para criar objeto RegExp:

new RegExp(pattern, attributes);

parâmetro

parâmetro pattern é uma string que especifica o padrão da expressão regular ou outra expressão regular.

parâmetro attributes é uma string opcional que contém os atributos "g", "i" e "m", respectivamente, usados para especificar correspondência global, correspondência diferenciada por maiúsculas e minúsculas e correspondência de várias linhas. Antes da padronização do ECMAScript, o atributo m não era suportado. Se pattern é uma expressão regular e não uma string, então deve ser omitido esse parâmetro.

retorno

Um novo objeto RegExp, com o padrão e sinalização especificados. Se o parâmetro pattern é uma expressão regular e não uma string, então o construtor RegExp() criará um novo objeto RegExp com o mesmo padrão e sinalização do RegExp especificado.

Se não usar o operador new, mas chamar RegExp() como uma função, seu comportamento é o mesmo que usar o operador new, exceto quando pattern é uma expressão regular, ele retorna apenas patterne não criar um novo objeto RegExp.

lançar

SyntaxError - Se pattern não for uma expressão regular válida, ou attributes contiver caracteres além de "g", "i" e "m", lance essa exceção.

TypeError - Se pattern É um objeto RegExp, mas não omitido attributes Parâmetro, lance essa exceção.

Suporte do navegador

/regexp/ é uma característica do ECMAScript1 (ES1).

Todos os navegadores suportam completamente ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Suporta Suporta Suporta Suporta Suporta Suporta

Métodos do objeto String que suportam expressões regulares

Método Descrição
search Retornar o valor correspondente ao padrão regular.
match Encontrar uma ou mais correspondências de padrão regular.
replace Substituir a substring correspondente ao padrão regular.
split Dividir uma string em um array de strings.