Regex
Guia de Consulta Rápida
Nome | Tradução | |
---|---|---|
\a | alert | alerta (bipe) |
\b | backspace | caractere espaço |
\e | escape | caractere Esc |
\f | form feed | alimentação |
\n | newline | linha nova |
\r | carriage ret | retorno de carro |
\t | htab | tabulação horizontal |
\v | vtab | tabulação vertical |
POSIX equiv. | Significado | |
---|---|---|
\d | [[:digit:]] | dígito |
\D | [^[:digit:]] | não-dígito |
\w | [[:alnum:]_] | palavra |
\W | [^[:alnum:]_] | não-palavra |
\s | [[:space:]] | branco |
\S | [^[:space:]] | não-branco |
Significado | Similar | |
---|---|---|
\a | alfabeto | [[:alpha:]] |
\A | não alfabeto | [^[:alpha:]] |
\h | cabeça de palavra | [[:alpha]_] |
\H | não cab. de palavra | [^[:alpha:]_] |
\l | minúsculas | [[:lower:]] |
\L | não minúsculas | [^[:lower:]] |
\u | maiúsculas | [[:upper:]] |
\U | não maiúsculas | [^[:upper:]] |
\o | número octal | [0-7] |
\O | não número octal | [^0-7] |
\B | não-borda | |
\A | início do texto | |
\Z | fim do texto | |
\l | torna minúscula | |
\L | torna minúscula até \E | |
\u | torna maiúscula | |
\U | torna maiúscula até \E | |
\Q | escapa até \E | |
\E | fim da modificação | |
\G | fim do casamento anterior |
POSIX | Similar | Significado |
---|---|---|
[:upper:] | [A-Z] | letras maiúsculas |
[:lower:] | [a-z] | letras minúsculas |
[:alpha:] | [A-Za-z] | maiúsculas e minúsculas |
[:alnum:] | [A-Za-z0-9] | letras e números |
[:digit:] | [0-9] | números |
[:xdigit:] | [0-9A-Fa-f] | números hexadecimais |
[:punct:] | [.,!?:...] | caracteres de pontuação |
[:blank:] | [ \t] | espaço em branco e TAB |
[:space:] | [ \t\n\r\f\v] | caracteres brancos |
[:cntrl:] | - | caracteres de controle |
[:graph:] | [^ \t\n\r\f\v] | caracteres imprimíveis |
[:print:] | [^\t\n\r\f\v] | imprimíveis e o espaço |
Significado | |
---|---|
. | qualquer caractere excepto nova linha |
\. | um periodo (continuando para \*, \(, \\, etc..) |
^ | início de uma string |
$ | fim de uma string |
[abc] | caracteres a, b, ou c |
[^abc] | qualquer caracteres excepto a, b, ou c |
aa|bb | aa ou bb |
? | representa um elemento que se repete 0 ou 1 vez |
+ | representa um elemento que se repete 1 ou mais vezes |
{n} | repete-se n vezes |
{n,} | repete-se pelo menos n vezes |
{m,n} | repete-se entre m e n |
Metacaracteres
São caracteres que possuem significado especial. Transformam caracteres literais (comuns) em expressões de busca. Os metacaracteres podem ter mais de um significado, dependendo do contexto de uso.
Ex: \ . * + - { } [ ] ^ $ | ? ( ) : ! =
Caractere único .
O ponto representa qualquer caractere único.
Caracteres de Escape
Trata-se de um metacaractere \ que indica a mudança no significado de outro caractere; transforma um metacaractere em literal comum.
Ex: \.
Classes ou Conjuntos de Caracteres
São listas de caracteres escritos dentro de colchetes [ ], e que servem para corresponder apenas um dos caracteres listados. Permite selecionar um dos caracteres dentro dos colchetes, não importando a ordem.
Expressões POSIX - Definem algumas classes (ou categorias) de caracteres para fornecer um método padrão de acesso a alguns grupos específicos de caracteres bastante utilizados.
Ex:
[[:alnum:]] - Caracteres alfanuméricos, o que no caso de ASCII corresponde a [A-Za-z0-9].
[[:alpha: ]] - Caracteres alfabéticos, o que no caso de ASCII corresponde a [A-Za-z].
[[:blank:]] - Espaço e tabulação, o que no caso de ASCII corresponde a [ \t].
[[:cntrl:]] - Caracteres de controle, o que no caso de ASCII corresponde a [\x00-\x1F\x7F].
[[:digit:]] - Dígitos, o que no caso de ASCII corresponde a [0-9]. O Perl oferece o atalho \d.
[[:graph:]] - Caracteres visíveis, o que no caso de ASCII corresponde a [\x21-\x7E].
[[:lower:]] - Caracteres em caixa baixa, o que no caso de ASCII corresponde a [a-z].
[[:print:]] - Caracteres visíveis e espaços, o que no caso de ASCII corresponde a [\x20-\x7E].
[[:punct:]] - Caracteres de pontuação, o que no caso de ASCII corresponde a [-!"#$%&'()*+,./:;<=>?@[\\\]_`{|}~].
[[:space:]] - Caracteres de espaços em branco, o que no caso de ASCII corresponde a [ \t\r\n\v\f]. O Perl oferece o atalho \s, que, entretanto, não é exatamente equivalente; diferente do \s, a classe ainda inclui um tabulador vertical, \x11 do ASCII.
Âncoras e Repetições de Caracteres
Metacaracteres – Âncoras
Âncora é um metacaractere usado para representar caracteres o início ou no fim de uma linha.
Início de linha: ^
Fim de linha: $
Linhas Vazias: ^$
Repetição de Caracteres
* - Item precedentes 0 ou mais vezes
\+ - Item precedente 1 ou mais vezes
\? - Item precedente 0 ou 1 vez
\w – um caractere qualquer alfanumérico
Exemplo procura email do tipo abcde@email.com:
\w+@\w+\.\w+