awk - 1つの入力として「example」と「EXAMPLE」という単語を保持します。

awk - 1つの入力として「example」と「EXAMPLE」という単語を保持します。

特定の単語を含む顧客だけを維持したいと思います。これは例です

< newname.txt awk 'BEGIN {FS=","} $7~/USA|United States/' > usa.txt

私が持っている問題は、彼らが資本であるため輸出しないというusaことです。同じ単語を大文字/小文字で何度も書かずにこのコマンドを実行するにはどうすればよいですか?UNITED STATESUnItEd StAtEs

答え1

tolowerまたは、以下を使用してだますことができますtoupper

awk 'BEGIN {FS=","} tolower($7)~/usa|united states/'

または

awk 'BEGIN {FS=","} toupper($7)~/USA|UNITED STATES/'

答え2

IGNORECASEフラグ(!= 0)を使用すると、すべての正規表現の大文字と小文字を無視できます。少なくともそれは退屈だった。

要求どおり:はい

echo "eXaMpLe"|awk '{IGNORECASE=1}
/example/ { print $0; }
'
eXaMpLe

関連情報