初心者の正規表現②
前回の『初心者の正規表現①』から、基本的でよく使うと思われる正規表現の解説をしてきました。
今回で初心者向きの正規表現の解説は一旦終わりです。
特殊文字 | 説明 |
[] | 角かっこで囲まれた文字の中のいずれかに一致 |
例 | [A-Z] → A~Zの文字のどれかと一致 [あいう] → 「あ」「い」「う」のどれかと一致 |
[^] | []内の文字以外 |
例 | [^か-こ] → か~こ以外の文字 |
() | ()内をの文字列をグループ化して扱う |
例 | (僕|私)は幸せ → 「僕は幸せ」「私は幸せ」 僕|私は幸せ → 「僕」 「私は幸せ」 |
(?i) | ?i以降の英字の大文字・小文字関係なく一致 |
例 | (?iq) → 「q」「Q」ともに一致 |
(?-i) | ?-i以降の英字の大文字・小文字を区別して一致 |
例 | (?-iQ) → 「Q」は一致。「q」は一致しない |
{} | {}に囲まれた整数の数だけの文字数と一致 |
例 | o{2} → 「zoo」と一致。「zo」は一致しない |
{min,max} | 直前の文字列のmin回からmax回繰り返し |
例 | no{1,3}n → 「noon」「nooon」「noooon」 |
{min,} | 直前の文字列のmin回以上繰り返し |
例 | no{1,}n →「noon」「nooon」「noooon」「nooooon」・・・。{1+}とは+同様 |
¥n ¥x0a ¥cJ | 改行 |
例 | 稼ぐ\nフリー・ノマドンナになりたい → 「稼ぐ フリー・ノマドンナになりたい」 |
¥b | 単語区切り位置に一致 |
例 | er\b → never の er と一致。verb の er とは一致しない |
¥B | 単語区切り位置以外と一致 |
例 | er\B → verb の er と一致。never の er とは一致しない |
¥s [ \f\n\r\t\v] | 全角・半角スペース、タブ、などの任意の空白文字と一致 |
¥S [^ \f\n\r\t\v] | 空白文字以外の任意の文字と一致 |
※特殊文字は全て半角ですので注意してください。
これらをマスターすれば、単純な条件のデータ抽出や整理はサクッとできるかと思います。
次回は、用途別にして中級以上の正規表現と応用編を加えてまとめます。
Amazon
[改訂新版]正規表現ポケットリファレンス
楽天
正規表現ポケットリファレンス改訂新版 (Pocket reference) [ 宮前竜也 ]