Expressões regulares comuns
Use expressões regulares para corresponder padrões de texto no arquivo de origem de log. É possível varrer mensagens em busca de padrões de letras, números ou uma combinação de ambos. Por exemplo, é possível criar expressões regulares que correspondam a endereços IP de origem e de destino, portas, endereços de MAC e muito mais.
Os códigos a seguir mostram várias expressões regulares comuns:
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} \d{1,5} (?:[0-9a-fA-F]{2}\:){5}[0-9a-fA-F]{2} (TCP|UDP|ICMP|GRE) \w{3}\s\d{2}\s\d{2}:\d{2}:\d{2} \s \t .*?
O caractere de escape, ou "\", é usado para denotar um caractere literal. Por exemplo, o caractere "." significa "qualquer caractere único" e corresponde a A, B, 1, X, etc. Para corresponder os caracteres ".", uma correspondência literal, deve-se usar "\."
| Tipo | Expressão |
|---|---|
| Endereço IP | \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} |
| Endereço de controle de acesso à mídia | (?:[0-9a-fA-F]{2}\:){5}[0-9a-fA-F]{2} |
| Número da porta | \d{1,5} |
| Protocolo | (TCP|UDP|ICMP|GRE) |
| Horário do dispositivo | \w{3}\s\d{2}\s\d{2}:\d{2}:\d{2} |
|
Espaço em branco |
\s |
| Tab | \t |
| Corresponder a qualquer coisa | .*? |
Dica: Para assegurar-se de que não corresponda acidentalmente outros
caracteres, escape qualquer caractere que não for dígito ou alfanumérico.