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 | 文字列の末尾 |
グループ化と選択
その他