Gawk matching

From wikinotes
Revision as of 01:58, 19 July 2021 by Will (talk | contribs)

regex

Used to filter lines, like grep.

echo '
  1920x1080
  foo
  5760x1080
' | awk '$0 ~ /[0-9]+x[0-9]+/ { print $0 }'

match

match checks for a matching string, returns char number if found, otherwise returns a 0

match($0, "searchterm")
echo "abcdefg" | awk '{var=match($0, "cd"); print var}'
#> 3

echo "abcdefg" | awk '{var=match($0, "zef"); print var}'
#> 0

echo "abcdefg" | awk '{ 
   if(match($0, "cd")) { 
       print "match found"; 
   } 
}'
#> match found