Python: 正規表現の特殊文字一覧
Pythonの正規表現で使用する特殊文字をまとめています。
任意の1文字
行頭・行末
繰り返し
繰り返しは「直前の文字を繰り返す」ことを意味します。
| 特殊文字 | 説明 |
| * | 0回以上 |
| + | 1回以上 |
| ? | 0回または1回以上 |
| {n} | n回 |
| {n,} | n回以上 |
| {n,m} | n回~m回 |
「最長マッチ」と「最短マッチ」
「*」「+」「?」は最長マッチになります。
最短マッチで取得する場合は「*?」「+?」「??」のように
後ろに「?」を付けます。
関連記事: 正規表現の最長マッチと最短マッチ
文字クラス
[]角括弧で括ったパターンは「文字クラス」と言います。
[]内のいずれかの文字に一致するかどうかを調べます。
| 特殊文字 | 説明 |
| [文字の並び] | 文字の並びのいずれかの文字 |
| [^文字の並び] | 文字の並び以外の文字 |
文字クラスの具体的なパターンの例を紹介します。
| パターン | 説明 |
| [abc] | abcのいずれか |
| [0-9] | 0~9のいずれか |
| [A-Z] | A~Zのいずれか |
| [A-Za-z] | A~Z,a~zのいずれか |
| [^0~9] | 0~9以外の文字 |
文字クラスの簡易表現
文字クラスでよく使うパターンの簡易表現です。
| 特殊文字 | 説明 |
| \s | 空白 |
| \S | 空白以外 |
| \d | 数字 |
| \D | 数字以外 |
| \w | 英数字、[A-Za-z0-9]と同じ |
| \W | 英数字以外 |
| \A | 文字列の先頭 |
| \Z | 文字列の末尾 |
グループ化と選択
その他