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+
