基本的な正規表現でよく使いそうなものをメモ

September 25, 2020 – 9:47 am

Web上の公開情報からデータを抽出するのに正規表現は必須だ。

基本的な正規表現のうち、良く使いそうなものをテーブルにまとめておくことにした。

なお、このテーブル、個人的な使用を念頭に作成しているので、正確さは保証のかぎりではないことに注意。

基本的な正規表現

文 字 意 味
^ 入力の先頭にマッチします。複数行フラッグがtrueにセットされている場合には、改行文字の直後にもマッチします。

この文字は、文字集合パターンの先頭にある場合は異なる意味を持ちます。詳細は相補文字集合を参照してください
$ 入力の末尾にマッチします。複数行フラグがtrueにセットされている場合には、改行文字の直前にもマッチします。
* 直前の文字の0回以上の繰り返しにマッチします。{0,}に相当します。
+ 直前の文字の1回以上の繰り返しにマッチします。{1,0}に相当します。
? 直前の文字の0回か1回の出現にマッチします。{0,1}に相当します。
. 半角の.(ピリオド)は、任意の1文字にマッチします。ただし、改行コードとは>
マッチしません。改行コード以外の1文字を示します
(x) ‘x’にマッチし、マッチした内容を記憶します。この括弧はキャプチャリング(格納)括弧と呼ばれます。
(?:x) ‘x’にマッチしますが、マッチした内容は記憶しません。このカッコは非キャプチャリング(非格納)括弧と呼ばれ、パターンを
グルーピングして、正規表現演算子と一緒に使う際の部分正規表現式を定義することができます。
x(?=y) ‘x’に’y’が続く場合のみ’x’にマッチします。この特殊文字は先読みと呼ばれます。
x(?!y) ‘x’に’y’が続かない場合のみ’x’にマッチします。これは否定先読みと呼ばれます。
(?<=y)x xの前にyがある場合のみxにマッチします。これは後読みと呼ばれます
(?!y)x x の前に yがない場合のみ x にマッチします。これは否定後読みと呼ばれます。
x|y ‘x’または’y’にマッチします。
{n} 直前の文字がちょうどn回出現するものにマッチします。nは整数が入ります
{n,} 直前の文字の少なくともn回の出現にマッチします
{n,m} 直前の文字が少なくともn回、多くてもm回出現するものにマッチしあす。
[xyz] 文字集合を表します。このパターンでは、角括弧で囲まれた文字のいずれか1個にマッチします。
[^xyz] 文字集合の否定または補集合です。角括弧で囲まれた文字ではない文字にマッチします。ハイフンを用いて文字の範囲を指定す>ることも可能です。

上記テーブル、必要に応じて加筆・修正する予定。

参考にしたサイト

  
  


Post a Comment