正規表現のメタ文字まとめ

こんにちは。
けいぞうです。

正規表現とは
文字列のパターンを表現する方法」ということを前回の記事で説明しました。

今回は、そのパターンを表現するためのルールについて
よく使うものと使用例についてのまとめになります。

[目次]

  • 基本的な正規表現のルール(メタ文字)一覧
  • 使用例

基本的な正規表現のルール(メタ文字)一覧

前回の記事で

(こぶし|つばき)ファクトリー

これは「こぶしファクトリー」と「つばきファクトリー」の両方を表すと説明しました。

そしてこれは丸かっことパイプの2つのルールを使っていると説明しましたが、
正規表現で使うこの丸かっこやパイプのことを「メタ文字」と言います。

ここではよく使う正規表現のメタ文字をまとめます。

メタ文字説明
.任意の1文字
+直前の文字の1回以上の繰り返し
*直前の文字の0回以上の繰り返し
?直前の文字があってもなくてもよい
|または(OR)
[ ]かっこ内のいずれか1文字
[^ ]かっこ内のいずれでもない
{ 数字 }直前の文字の数字の回数だけ繰り返し
{ 数字1, 数字2 }数字1~数字2の文字数に収まる長さの直前の文字の繰り返し
^行の先頭
$行の末尾
\d全ての数字
\D全ての数字以外の文字
\sタブ以外の空白文字
\S空白文字以外

使用例

■ドット「.」

「か」で始まって「き」で終わる3文字の文字列

か.き

■プラス「+」

「か」で始まって「き」で終わる3文字以上の文字列

か.+き

■アスタリスク「*」

「か」で始まって「き」で終わる2文字以上の文字列

か.*き

■クエスチョン「?」

「なす」または「なすび」

なすび?

■パイプ「|」

「チキンカツ」または「ポークカツ」

(チキン|ポーク)カツ

■角かっこ [ ]

あ行の文字で始まって「き」で終わる2文字の文字列

[あ-お]き

■角かっこと否定 [^ ]

行末がドット「.」で終わらない行

.*[^.]$

■{ 数字 }

aが3回連続する文字列

a{3}

■{ 数字1, 数字2 }

aが3回~5回連続する文字列

a{3,5}

■ハット「^」

行の先頭が「私は」で始まる行

^私は.*

■ダラー「$」

行末が「ました。」で終わる行

.*ました。$

■\d

行の先頭が数時で始まる行

^\d.*

■\D

行末が数字以外で終わる行

.*\D$

■\s

行末の空白

\s$

■\S

行末が空白以外で終わる行

.*\S$