Olá, como podemos ajudar?

Pesquisas recentes: Aprovar revalidação - Configurar carimbo de tempo - Associar diretório controlado - Associar objeto

Montar uma expressão regular

 

Pré-requisito

  • Acesso ao menu Cadastro > Perfil de reconhecimento (CAP004).

 

Apresentação

Na configuração dos índices dos perfis de reconhecimento, é possível utilizar expressões regulares.

Uma expressão regular é uma notação para descrever um padrão de caracteres. Serve para validar entradas de dados ou fazer busca e extração de informações em textos. Por exemplo, para verificar se um dado fornecido é um número de 0,00 a 9,99 pode-se usar a expressão regular ^\d,\d\d$, pois o símbolo \d é um curinga que casa com um dígito. 

Os caracteres especiais ^ e $ indicam, respectivamente, como será o início e fim da linha, sem eles, os números 10,00 ou 100,123 seriam válidos, pois contém dígitos que casam com a expressão regular.

Um metacaractere é um caractere ou uma sequência de caracteres com significado especial em expressões regulares. Os metacaracteres podem ser categorizados conforme seu uso.

Em expressões regulares o verbo 'casar' é usado como tradução para match, no sentido de combinar, encaixar, parear.

 

Especificadores

Especificam o conjunto de caracteres a casar em uma posição.

Metacaractere Descrição

.

Curinga: Casa com qualquer caractere, exceto a quebra de linha \n.

[…]

Conjunto: Casa com qualquer caractere incluído no conjunto. Por exemplo:
[a-z] irá aceitar strings com caracteres minúsculos entre 'a' e 'z', enquanto [A-Z] aceitará caracteres maiúsculos entre 'A' e ‘Z’.
• [abcABC] irá aceitar strings que contenham apenas os caracteres 'a', 'b', 'c', 'A', 'B' e/ou 'C'.
 [123] irá aceitar strings que contenham apenas os caracteres '1', '2' e/ou '3';
• [0-9] irá aceitar strings com caracteres entre '0' e '9'.

[^...]

Conjunto negado: Casa com qualquer caractere que não esteja incluído no conjunto.

\d

Dígito: O mesmo que [0-9].

\D

Não-dígito: O mesmo que [^0-9].

\s

Branco: Espaço, quebra de linha, tabs etc.; o mesmo que [ \t\n\r\f\v].

\S

Não-branco: O mesmo que [^ \t\n\r\f\v].

\w

Alfanumérico: O mesmo que [a-zA-Z0-9_] (mas pode incluir caracteres Unicode)

\w

Não-alfanumérico: O complemento de \w.

\

Escape: Anula o significado especial do metacaractere seguinte; por exemplo,\. representa apenas um ponto, e não o curinga.
 
 

Quantificadores

Definem o número permitido de repetições da expressão regular imediatamente anterior.

Metacaractere Descrição

{n}

Permite exatamente n ocorrências. Por exemplo:
• [abc]{3}: Aceita strings contendo 3 caracteres, sendo eles 'a', 'b' ou 'c', como: aaa, abc, acb, bba etc.
• [0-9]{5}: Aceita strings com 5 caracteres entre '0' e '9', como: 11111, 12345, 15973 etc.

{n,m}

Permite no mínimo n ocorrências e no máximo m. Por exemplo:
• [abc]{3,5}: Aceita strings contendo entre 3 e 5 caracteres, sendo eles 'a', 'b' ou 'c', como: aaaaa, acbca, abc, acba etc.
• [0-9]{5,6}: Aceita strings contendo 5 ou 6 caracteres entre '0' e '9', como: 12345, 123456, 01030, 000000 etc.

{n,}

Permite no mínimo n ocorrências. Por exemplo:
• [abc]{2,}: Aceita strings contendo, ao menos, 2 caracteres, sendo eles 'a', 'b' ou 'c', como: aa, abc, ccc, abcabc etc.
• [0-9]{2,}: Aceita strings contendo, ao menos, 2 caracteres entre '0' e '9', como: 12, 123, 987654321 etc.

?

Permite 0 ou 1 ocorrência; o mesmo que {0,1}.

+

Permite 1 ou mais ocorrências; o mesmo que {1,}.

*

Permite 0 ou mais ocorrências.
 
 

Âncoras

Estabelecem posições de referência para o casamento do restante da expressão regular. Note que estes metacaracteres não casam com caracteres no texto, mas sim com posições antes, depois ou entre os caracteres.

Metacaractere Descrição

^

Casa o início de uma string.

$

Casa o fim de uma string; não captura o \n no fim do texto ou da linha.

\A

Início do texto.

\Z

Fim do texto.

\b

Posição de borda: Encontra uma correspondência no início ou fim de uma string;

\B

Posição de não-borda.
 
 

Agrupamento

Definem ou grupos ou alternativas.

Metacaractere Descrição

(...)

Define um grupo, para efeito de aplicação de quantificador, alternativa ou de posterior extração ou reuso

...|...

Alternativa; casa a expressão regular à direita ou à esquerda.

\«n»

Recupera o texto casado no n-ésimo grupo.
 
 

 

Exemplos de expressões regulares

Veja alguns exemplos com breves explicações para ter uma ideia geral:

Exemplo 1

Expressão regular:

\d{5}-\d{3}

 

O padrão de um CEP como 05432-001: 5 dígitos, um - (hífen) e mais 3 dígitos. 

A sequência \d é um metacaractere, um curinga que casa com um dígito (0 a 9). 

A sequência {5} é um quantificador: indica que o padrão precedente deve ser repetido 5 vezes, portanto \d{5} é o mesmo que \d\d\d\d\d.

 
 

Exemplo 2

Expressão regular:

[012]\d:[0-5]\d

 

Semelhante ao formato de horas e minutos, como 03:10 ou 23:59. 

A sequência entre colchetes [012] define um conjunto. Neste caso, o conjunto especifica que o primeiro caractere deve ser 0, 1 ou 2.

Dentro dos [] o hífen indica uma faixa de caracteres, ou seja, [0-5] é uma forma abreviada para o conjunto [012345]; o conjunto que representa todos os dígitos, [0-9] é o mesmo que \d

Note que esta expressão regular também aceita o texto 29:00 que não é uma hora válida.

 
 

Exemplo 3

Expressão regular:

[A-Z]{3}-\d{4}

 

É o padrão de uma placa de automóvel no Brasil: três letras entre A e Z, seguidas de um - (hífen), seguido de quatro dígitos, como CKD-4592.

 
 

 

Conclusão

Após montar a expressão regular, é possível aplicá-la nas configurações do índice do perfil.


Este artigo foi útil?