■
とにかく,全角半角,大文字小文字関係なくKYを含む行を探して出力する.
awkの参照条件は「\|」をつけて繋ぐとor条件,「|」だけだとand条件になる.
awk /KY\|ky\|KY\|ky/'{print ARGV[1],$0}' test.txt
さらに,抜き出した前後の文字列をチェックしてアルファベットではないもののみ,
抽出するawkスクリプト.
BEGIN{ } { $1=toupper($1) a=match($1,/KY/) b=substr($1,a-1,1) c=substr($1,a+2,1) b1=match(b,/[A-Z]/) c1=match(c,/[A-Z]/) res=b1+c1 if(res==0)print $0 }