Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Os principais metacaracteres estão descritos no quadro abaixo:

Descrição

...

Caractere

...

Função

Escape

...

\O caractere de escape é usado para determinar como um caractere subsequente será interpretado.
Acento

...

^

...

Usado para denotar o início de uma expressão regular.
Dólar

...

$

...

Usado para expressar o fim de uma expressão regular ou o final de uma linha.
Colchetes

...

[ ]

...

Usado para verificar qualquer caractere único em um conjunto de caracteres especificado entre [ ].
Parênteses

...

( )

...

Usado para selecionar e verificar uma string.
Interrogação

...

?

...

É usado para verificar zero (nenhuma ocorrência) ou uma ocorrência do caractere que o precede.
Sinal de +

...

+

...

É usado para verificar uma ou mais ocorrências do caractere que o precede.
Asterisco

...

*

...

É usado para verificar qualquer número de ocorrências (incluindo zero ocorrências) do caractere que o precede.
Ponto

...

.

...

É usado para verificar um único caractere (qualquer caractere que possa ser digitado no teclado que não seja um caractere de quebra de linha (n)).
Pipe|

...

É interpretado por “OU” na lógica de uma regex.
Exclamação

...

!

...

É interpretado por “NÃO” na lógica de uma regex. Mas ao contrário de ^ (circunflexo), o ! é usado apenas no início de uma regra ou condição.
Chaves

...

{ }

...

Usado para verificar uma ou mais ocorrências do caractere anterior. É como o metacaractere +, mas fornece controle sobre o número de ocorrências do caractere que você deseja corresponder na regex.
Espaço em branco ou vazio

...


Para criar um espaço em branco em uma expressão regular, basta usar um espaço em branco.


Classes Predefinidas de Caracteres

Há algumas classes de caracteres que já são definidas, isso facilita na construção de uma regexexpressão regular. Por exemplo, sempre que você quiser encontrar um dígito você pode utilizar o d em vez de [0-9], são equivalentes.

Classe

...

Caractere

...

Descrição

[:digit:]

...

d

...

Equivalente a [0-9]
^[:digit]

...

D

...

Não dígito
[:alnum]

...


letras e números ; equivalente a [A-Za-z0-9]
[:alpha:]

...


letras; equivalente a [A-Za-z]
[:space:]

...

\s

...

caracteres brancos ; equivalente a [ tnrfv]
^[:space:]

...

\S

...


[:word:]

...

\w

...

qualquer caractere alfanumérico, mais underscore (); equivalente a [[:alnum:]]
^[:word:]

...

\W

...


[:lower:]

...


minúsculas; equivalente a [a-z]
[:upper:]

...


maiúsculas; equivalente a [A-Z]
[:punct:]

...


caracteres de pontuação; equivalente a [.,!?:...]
[:xdigit:]

...


números hexadecimais; equivalente a [0-9A-Fa-f]
[:blank:]

...


espaço em branco e TAB; equivalente a [t]
[:punct:]

...


pontuação; equivalente a [!"#$%&'()*+,-./:;

...

[\]_`{|}~]


Metacaracters Âncoras

Caractere

...

Descrição

...

Modelo

...

Representação

...

Explicação

\G

...

início da busca

...

"/(?:

...

George\G) likes ([^ ]+)/"

...

"Bob likes pie, George likes icecream"

...

Isso corresponderá apenas no ponto de partida da pesquisa ou na posição em que a correspondência anterior foi concluída com êxito. Útil com o sinalizador / g, ou quando você está apenas tentando corresponder após um certo ponto em uma string.
^

...

início da linha

...

"^abc"

...

"abcde"

...

Corresponde ao início de uma sequência sem consumir caracteres. Se o modo multilinha for usado, isso também corresponderá imediatamente após um caractere de nova linha.associa texto que inicia com a sequência "abc", embora não "yabc".
$

...

fim da linha

...

"abc$"

...

"yzabc"

...

associa texto que termina com a sequência "abc", embora não "abcde".
\A

...

início da string

...

"\Apattern"

...

"patterns"

...

Corresponde apenas ao início de uma sequência. Ao contrário de ^, isso não é afetado pelo modo de múltiplas linhas.
\Z

...

fim da string

...

"

...

pattern\Z"

...

"topattern"

...

Corresponde apenas ao fim de uma sequência. Ao contrário de $, isso não é afetado pelo modo de múltiplas linhas.
\z

...

fim absoluto da string

...

"

...

pattern\z"

...

"topattern"

...

Corresponde apenas ao final de uma sequência. Ao contrário de $, isso não é afetado pelo modo de múltiplas linhas e, ao contrário de \ Z, não será correspondido antes de uma nova linha final no final de uma sequência.
\b

...

fronteira do caractere

...

"

...

car\b"

...

"car"; "tocar"

...

associa a fronteira da palavra "car", embora não "carburador".
\B

...

não fronteira do caractere

...

"

...

car\B"

...

"carburetor"

...

não associa a fronteira da palavra "car", mas pode assegurar que a sequência ocorra no meio da palavra, como "carburador", embora não "tocar".


Metacaracters Agrupamento

Caractere

...

Descrição

[]

...

usado para indicar o conjunto de caracteres que podem conter no texto pesquisado
[^]

...

usado para indicar o conjunto de caracteres que NÃO podem conter na pesquisa.
(...)

...

indica o início e o fim de um grupo; ex.: /(abc)+(def)/ encontra um ou mais ocorrencias de "abc" seguido por uma ocorrencia de "def". obs.: para usar o parêntese, literalmente, utilize o caractere de escape " (" ou " )", ou ainda, "[ ( ]" ou "[ ) ]"


Metacaracters Quantificadores

Caractere

...

Descrição

...

Modelo

...

Representação

...

Explicação

...


zero ou mais vezes

...

"zo"

...

"z" ; "zoo"

...

o caractere que precede o asterisco pode ser repetido 0 ou mais vezes (equivalente a "{0,}")
+

...

uma ou mais vezes

...

"zo+"

...

"zo" ; "zoo"

...

o caractere que precede o sinal de (+) pode ocorrer 1 ou mais vezes (equivalente a "{1,}")
?

...

zero ou uma vez

...

"do(es)?"

...

"do" ; "does"

...

o caractere que precede o sinal de interrogação pode ocorrer 0 ou 1 vez (equivalente a "{0,1}")
{n}

...

n vezes

...

"o{2}"

...

"food"

...

o caractere que precede o sinal pode ocorrerá n vezes
 {n,}

...

pelo menos n vezes

...

"o{2,}"

...

"foooood"

...

a sequência "{0,}" é equivalente a "o*"; a sequência "{1,}" é equivalente a "o+"
{n,m}

...

no mínimo n e no máximo m

...

"o{1,3}"

...

"foooood"

...

associa aos três primeiros "ooo"; é equivalente a "o?"
.

...

um caractere simples, exceto "n"

...

"o."

...

"oa"

...

representa um

...

caracter simples, exceto "n" ( para associá-lo utilize o padrão "[sS] " )
[xyz]

...

um dos caracteres que está dentro dos colchetes

...

"[abc]"

...

"plain"

...

associa "a" contido na palavra "plain"
[a–z]

...

um dos caracteres que está dentro dos colchetes

...

"[a–z]"

...


associa um dos caracteres de 'a' até 'z' em caixa baixa, lembre-se que expressões regulares são case-sensitive


Metacaracters Alternador

O caracters "|" (pipe) representa uma ou outra ocorrência. Por exemplo, o padrão "(p|r)ato" indica "pato" ou "rato".

Exemplos de Regex

Regex

...

SIGNIFICADO

^(.html)$

...

Verifica qualquer ocorrência de caracteres que precede .html

...

^dog$|Procura a string “dog”

...

 ^a+$

...

Verifica a ocorrência de uma ou mais letras minúsculas “a”.
^(abc)+$

...

Verifica uma ou mais ocorrências da string “abc”.
^(abc)$

...

Verifica qualquer número de ocorrências da string “abc”.
^a*$

...

Verifica qualquer número de ocorrências da letra minúscula “a”.