Gramática de Expressão Comum

O Editor de Configuração de Adaptador Hyades permite utilizar expressões comuns para descrever como os arquivos de log devem ser transformados em registros do Common Base Event. As tabelas a seguir são uma diretriz para o uso de expressão comum.

Regras Gerais

Correspondência de Expressão Comum

Expressão Corresponde
{n,m} pelo menos n mas não mais que m vezes
{n,} pelo menos n vezes
{n} exatamente n vezes
* 0 ou mais vezes
+ 1 ou mais vezes
? 0 ou 1 vezes
. tudo exceto \n em uma expressão comum entre parênteses
^ um token nulo que corresponde ao início de uma cadeia ou linha (isto é, a posição logo após um avanço de linha ou logo antes do início de uma cadeia) em uma expressão comum entre parênteses
$ um token nulo que corresponde ao fim de uma cadeia ou linha (isto é, a posição logo antes de um avanço de linha ou logo depois do fim de uma cadeia) em uma expressão comum entre parênteses
\b retrocesso dentro de uma classe de caractere ([abcd])
\b token nulo que corresponde a um limite de palavra (\w em um lado e \W no outro)
\B token nulo que corresponde a um limite que não seja um limite de palavra
\A apenas no início da cadeia
\Z apenas no final da cadeia (ou antes de um novo avanço de linha no final)
\ avanço de linha
\r retorno de carro
\t tab
\f avanço do papel
\d dígito [0-9]
\D não-dígito [^0-9]
\w caractere de palavra [0-9a-z_A-Z]
\W caractere não-palavra [^0-9a-z_A-Z]
\s um caractere de espaço em branco [ \t\n\r\f]
\S um caractere não-espaço em branco [^ \t\n\r\f]
\xnn a representação hexadecimal do caractere nn
\cD O caractere de controle correspondente
\nn ou \nnn A representação octal do caractere nn, exceto uma referência anterior.
\1, \2, \3 ... qualquer que seja o primeiro, segundo, terceiro e assim por diante, grupo entre parênteses correspondido. Isso é chamado de referência anterior. Se não houver um grupo correspondente, o número será interpretado como uma representação octal de um caractere.
\0 o caractere nulo. Qualquer outro caractere com barra invertida corresponde a si mesmo.
*? 0 ou mais vezes
+? 1 ou mais vezes
?? 0 ou 1 vezes
{n}? exatamente n vezes
{n,}? pelo menos n vezes
{n,m}? pelo menos n mas não mais que m vezes

Agrupando e Extraindo Correspondências

Para agrupar partes de uma expressão, utilize os metacaracteres ( ). Isso permite que a expressão comum nos parênteses seja criada como uma única unidade. Por exemplo, a expressão regular

gravidade:(1|2)
corresponde ao padrão gravidade:1 ou gravidade:2.

Para extrair partes de uma cadeia que foram correspondidas utilizando os metacaracteres de agrupamento, utilize as variáveis especiais $1, $2, etc.

# Extraia o nome e a URL de $pattern = <a href="secure_logon.html">Formulário de Logon</a>
$pattern =~ <a href=\"(.*)\">(.*)</a> ; # corresponder utilizando agrupamento
$url = $1;                # $1 equivale a secure_logon.html
$pagename = $2;           # $2 equivale ao Formulário de Logon

Expressões Regulares Estendidas Perl 5

Expressão Corresponde
(?#texto) Um comentário incorporado que faz o texto ser ignorado.
(?:regexp) Agrupa itens como "()" mas não faz com que a correspondência do grupo seja salva.
(?=regexp) Uma declaração antecipada positiva de extensão nula. Por exemplo, \w+(?=\s) corresponde a uma palavra seguida por espaço em branco, sem incluir espaço em branco no MatchResult
(?!regexp) Uma declaração antecipada negativa de extensão nula. Por exemplo foo(?!bar) corresponde a qualquer ocorrência de foo que não seja seguida por bar. Esta é uma declaração de extensão nula, o que significa que a(?!b)d corresponde a ad porque a é seguido por um caractere que não é b (o d) e d segue a declaração de extensão nula.
(?imsx) Um ou mais modificadores de correspondência de padrão incorporados.
i ativa sem distinção entre maiúsculas e minúsculas
m
ativa o tratamento multilinha da entrada
s
ativa o tratamento de linha única da entrada
x
ativa os comentários estendidos de espaço em branco

Conceitos Relacionados
Visão Geral do Adaptador de Log Genérico Hyades
Especificação do Formato Common Base Event

Tarefas Relacionadas
Criando um Analisador de Log
Criando um Adaptador com Base em Regras
Criando um Adaptador Estático

Referências Relacionadas
Estrutura do Arquivo de Configuração do Adaptador
Especificação do Formato Common Base Event
Editor de Configuração de Adaptador
Gramática de Expressão Comum