Precisão se declaração no awk

1

Isso é possível para condições precisas na declaração "if"? Vamos dar um exemplo do meu post anterior (a propósito, a variável "k" é complicada, obrigado terdon;)) e dizer que eu estou procurando por $ i que começa a partir de duas letras maiúsculas, depois disso temos 2 dígitos, outros letras / dígitos não são importantes e o comprimento da palavra que estou procurando não é constante (no exemplo: AB12asdf ou HR56Ame4).

awk '{k=0; for (i=1;i<=NF;i++){

        if ($i=="ABC"){print $(i-2); k++}
       } 
       if(k==0){print "No ABC in line",NR}
 }' file.txt

Obrigado,

lucas

    
por lucas 26.11.2013 / 20:31

1 resposta

1

Use o operador ~ regex-match

if ($i ~ /^[[:upper:]][[:upper:]][[:digit:]][[:digit:]]/)
    
por 26.11.2013 / 20:52

Tags