En utilisant awk
, j'ai besoin de trouver un mot dans un fichier qui correspond à un modèle regex.
Moi seulement veux imprimer le mot correspondant au motif.
Donc, si dans la ligne, j'ai:
xxx yyy zzz
Et motif:
/yyy/
Je veux seulement obtenir:
yyy
EDIT: grâce à kurumi, j'ai réussi à écrire quelque chose comme ceci:
awk '{
for(i=1; i<=NF; i++) {
tmp=match($i, /[0-9]..?.?[^A-Za-z0-9]/)
if(tmp) {
print $i
}
}
}' $1
et c'est ce dont j'avais besoin :) merci beaucoup!
tmp=match($i, /regexp);if(tmp){}
, vous devriez simplement pouvoir le faire if(tmp ~ $i){}
parce que ~
signifie «correspond à l'expression rationnelle».