[gawk] 正規表現のキャプチャグループにマッチした文字列を取得する

作成日: 2022年11月07日

gawk の match 関数を使用すると、キャプチャグループにマッチした文字列を得ることができます。

echo __dummy__ | gawk 'match($0, /__(.*?)__/, m) { print m[1] }'

説明

  • match 関数の第 1 引数には文字列を抽出したい文字列を指定します。$0 は、標準出力から文字列を受け取ります。
  • match 関数の第 2 引数には正規表現を指定します。
  • match 関数の第 3 引数には、マッチした結果を格納する変数を指定します。
  • 変数 m の 1 番目にキャプチャグループにマッチした結果が格納されています。

実行結果

dummy
gawk