文字クラスとメタ文字

初級104

[ ] で文字のセットを指定する「文字クラス」と、\d・\w・\s などの便利なメタ文字を学びます。

文字クラス [ ]

[...] で「この中のどれか1文字」を表します。

パターン: [abc]
マッチ: "a", "b", "c" のいずれか1文字

範囲指定

- で文字の範囲を指定できます。

[a-z]       → 英小文字1文字
[A-Z]       → 英大文字1文字
[0-9]       → 数字1文字
[a-zA-Z0-9] → 英数字1文字

否定クラス

[^...] は「この中以外の1文字」を表します。

[^aeiou] → 母音(a,e,i,o,u)以外の1文字
[^0-9]   → 数字以外の1文字

メタ文字

よく使う文字クラスは省略記法(メタ文字)が用意されています。

メタ文字意味同等の文字クラス
\d数字[0-9]
\D数字以外[^0-9]
\w英数字・アンダースコア[a-zA-Z0-9_]
\W\w 以外[^a-zA-Z0-9_]
\s空白文字(スペース・タブ等)[ \t\n\r]
\S空白以外[^ \t\n\r]

次のレッスン: アンカー — 位置にマッチする

regex-dojo — JavaScript RegExp
正規表現エディタ入力するたびにリアルタイムで検証
//g
フラグ:
テスト文字列
gray or grey
マッチ結果
gray or grey
パターンを入力するとリアルタイムで検証します
練習問題 — 0/4 完了 (0/50pt)
「gray」と「grey」の両方にマッチするパターンを書いてください(文字クラスを使用)。
10pt
テスト文字列から数字1文字を全てマッチさせてください(\d を使う)。
10pt
英小文字が1文字以上続く部分を全てマッチさせてください([a-z]+ を使う)。
15pt
母音(a, e, i, o, u)以外の文字を全てマッチさせてください(否定クラス [^aeiou\s] を使う)。
15pt