正規表現の文字クラス

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

文字クラスにより、正規表現の単一項目として、文字の集まりを扱える。
文字クラスは、[ ] で囲むことで使えます。
[ ] で囲まれた文字のどれか1個にマッチします。

スポンサーリンク

[aAoP] は、a、A、o、P のいずれかに一致します。

また、文字列全部を文字クラスに入れるには、最初と最後の文字の間にハイフン-を入れる。

[a-z] は [abcdefghijklmnopqrstuvwxyz] を表す。

[a\-z] とハイフンをエスケープさせると、a、-、zのいずれかと一致。
文字クラスの外側では、-(ハイフン)は、特別扱いされないので\エスケープは必要ない。

[ ] 文字クラスの中の最初で、^を使うと、否定の意味になる。

[^a-zA-Z] は、英語の文字ではない全ての文字と一致。

最後に、文字クラスのメタ文字。(ショートカットでよく使います)

\d  数字               [0-9]
\D  数字ではない         [^0-9]
\w  ワード文字           [a-zA-Z0-9_]
\W  ワード文字ではない     [^a-zA-Z0-9_]
\s  ホワイトスペース        [ \t\n\r\f]
\S  ホワイトスペースではない  [^ \t\n\r\f]

例) /fred \w+ barney/
⇒ fred、スペース、「ワード」、barney にマッチ。 fred and barney など。

例) [\d\D]
⇒ 数字と非数字にマッチする。つまり、改行文字\nも含め全ての文字にマッチする
※ . ドット文字は、改行文字\n以外のあらゆる文字にマッチすることを思い出す。

スポンサーリンク
 
スポンサーリンク