文字列操作をしていると、大文字小文字の変換が必要な場合があるかと思います。
awkではtolower()/toupper()が用意されています。

スポンサーリンク

tolower()の使い方

下記の形式でawkのtolower()を書きます。
変換対象文字列の大文字が小文字に変換され、変換後の文字列を戻り値として返します。
全角については処理系によって異なるので、変換対象文字列は半角アルファベットにするのが無難です。

tolower( 変換対象文字列 )

例えば、1フィールド(列)目の文字列を全て小文字にしたい場合には、下記のように書きます。
変数strに変換後の文字列が格納されます。

サンプルコードです。
下記のように、大文字と小文字が混ざったin.txtがあるとします。

tolower()を使い、1フィールド(列)目の文字列の大文字を小文字に変換します。

実行すると、下記のように全て小文字になっているが確認できます。

スポンサーリンク

toupper()の使い方

下記の形式でawkのtoupper()を書きます。
変換対象文字列の小文字が大文字に変換され、変換後の文字列を戻り値として返します。
tolower()と同様ですが、全角については処理系によって異なるので、変換対象文字列は半角アルファベットとするのが無難です。

toupper( 変換対象文字列 )

例えば、1フィールド(列)目の文字列を全て大文字にしたい場合には、下記のように書きます。
変数strに変換後の文字列が格納されます。

サンプルコードになります。
同様に、in.txtの中身は大文字小文字が混ざったアルファベットになります。

toupper()を使って、1フィールド(列)目の文字列の小文字を全て大文字に変換します。

実行すると、下記のように全て大文字となって出力されているが確認できます。

スポンサーリンク