次へ: 参考文献 上へ: AWK による数合てゲームの作成 前へ: 7 最後に (PDF ファイル: awk3.pdf)


A. 正規表現

AWK で正規表現で使用できるメタ文字 (特別な意味を持つ文字) は 以下の通りです ($r$ 等は正規表現、$c$ 等は 1 文字を表す)。

  1. \ : エスケープ用、あるいは特別な文字用 (後述)
  2. ^ : 文字列の先頭部分 (先頭文字ではない)
  3. $ : 文字列の最後尾 (最後尾の文字ではない)
  4. . : 任意の 1 文字
  5. [$c_1c_2$...] : $c_1c_2$...のいずれか 1 文字
  6. [^$c_1c_2$...] : $c_1c_2$...以外のいずれか 1 文字
  7. [ ] 内の $c_1$-$c_2$ : $c_1$ から $c_2$ までの全ての文字
  8. $r_1$|$r_2$ : 正規表現 $r_1$ または $r_2$ にマッチする文字列
  9. ($r$) : 正規表現 $r$ をグループ化
  10. ($r$)? または $c$? : $r$ (または $c$) がないかまたは 1 つだけある文字列
  11. ($r$)* または $c$* : $r$ (または $c$) の 0 回以上の繰り返し
  12. ($r$)+ または $c$+ : $r$ (または $c$) の 1 回以上の繰り返し

グループ化を意味する ( ) は、後ろに ?,*,+ を伴ったり、 | を使うときに使われます。例えば、以下の通りです。

*+ 等は、( ) の後ろ以外でも使用できます。

エスケープ用に使われる \ は、上記のような特別な文字の意味をなくす のに使われます。例えば、

といった具合です。

またその他にも、C 言語でも用いられることがある 以下のような特別な文字を表すのにも使われます。

  1. \a : ベル
  2. \b : バックスペース
  3. \f : 改ぺージ
  4. \n : 改行
  5. \r : 復帰
  6. \t : タブ
  7. \v : 垂直タブ
  8. \$ooo$ : 8 進数 $ooo$ で表される数字 ($ooo$ は 0 から 7 までの 3 桁の数字)
  9. \x$hh$ : 16 進数 $hh$ で表される数字


次へ: 参考文献 上へ: AWK による数合てゲームの作成 前へ: 7 最後に
竹野茂治@新潟工科大学
2006年6月8日