Computação

1165 palavras 5 páginas
[ 104 ]

Expressões Regulares

Awk
Característica

Como fazer

Busca

Operador ~, Função match

Substituição

Funções sub, gensub

Divisão

Função split

ER crua

/entre barras/

Ignore M/m

Variável IGNORECASE

Global

Função gsub, modificador g

Awk é uma linguagem antiga (1977) que combina processamento de texto com estruturas de uma linguagem genérica, possuindo condicionais, operações aritméticas e afins.
Além do Awk clássico do Unix, também existe o GNU Awk, conhecido como gawk, que traz algumas f uncionalidades novas e um melhor suporte às expressões regulares. O gawk é amplamente utilizado em sistemas Linux.
Grande parte dos exemplos deste tópico f uncionará em ambas versões.
Caso contrário, será feita uma menção sobre quais são as características exclusivas do GNU Awk.
As expressões regulares são parte integrante da linguagem. Basta colocar uma expressão entre barras que o Awk saberá que aquilo não é uma string, e sim uma expressão regular com metacaracteres. Se sua expressão possuir uma barra /, lembre-se de escapá-la \/ para evitar problemas.
O operador til ~ é usado para fazer comparações de strings com expressões regulares. Para uma comparação inversa, em que o teste retornará sucesso se a expressão não casar com a string, use o operador !~. if ("Awk" ~ /^A/) { print "Casou"
}
if ("Awk" !~ /^X/) { print "Não casou"
}

Capítulo 7 ! Linguagens e ferramentas

[ 105 ]

Para fazer testes ignorando a diferença entre maiúsculas e minúsculas, antes mude para 1 o valor da variável IGNORECASE, que f unciona como uma chave que liga e desliga esse comportamento. Mude o valor da variável para zero quando quiser retornar à comparação normal.
IGNORECASE = 1 if ("Awk" ~ /^a/) { print "Casou"
}

O Awk do Unix não reconhece essa variável, então a única maneira de simular esse comportamento é usando a criatividade: converta a string para minúsculas ao fazer o teste e use somente minúsculas em sua

Relacionados

  • computação o que é
    334 palavras | 2 páginas
  • computaçao
    3419 palavras | 14 páginas
  • Computação
    684 palavras | 3 páginas
  • computaçao
    1577 palavras | 7 páginas
  • Computação
    785 palavras | 4 páginas
  • Computação
    274 palavras | 2 páginas
  • Computação
    375 palavras | 2 páginas
  • Computação
    410 palavras | 2 páginas
  • Computação
    4045 palavras | 17 páginas
  • Computação
    1982 palavras | 8 páginas