MENU

Python:正規表現8 ~正規表現に用いる記号~

正規表現にはさまざまな記号があり、最初は覚えることが多く感じます。しかし、よく使う記号は限られているため、一覧で整理しておくと理解しやすくなります。この記事では、Pythonでよく使う正規表現の記号をまとめました。

正規表現に用いられる記号まとめ

  • ? 直前の修飾子の0回か1回の出現にマッチ
  • * 直前の修飾子の0回以上の出現にマッチ
  • + 直前の修飾子の1回以上の出現にマッチ
  • {n} 直前の修飾子のn回の出現にマッチ
  • {n,} 直前の修飾子のn回以上の出現にマッチ
  • {0,n} 直前の修飾子の0~n回の出現にマッチ
  • {n,m} 直前の修飾子のn回からm回の出現にマッチ
  • ^Hello 「Hello」で始まる文字列とマッチ
  • Hello$ 「Hello」で終わる文字列とマッチ
  • . 改行文字以外の任意の1文字とマッチ
  • \d 数字にマッチ
  • \w 英数字とアンダースコア(_)にマッチ
  • \s 空白文字にマッチ
  • \D 数字以外の文字にマッチ
  • \W英数字とアンダースコア以外にマッチ
  • \S 空白文字以外の文字にマッチ
  • [abc] 角カッコの中の任意の1文字にマッチ(「a」「b」「c」のどれかにマッチ)
  • [^abc] 角カッコの中の文字以外の任意の1文字にマッチ(「a」「b」「c」以外の文字にマッチ)
  • (Hello)‘Hello’を一つの修飾子にまとめる(グループ化)
  • \b ワード境界とマッチ
  • \B 非ワード境界とマッチ
  • | r'cat|dog' cat または dogにマッチ

正規表現チートシート

?      直前のパターンの0回または1回の出現
*      直前のパターンの0回以上の出現
+      直前のパターンの1回以上の出現
{n}    n回の出現
{n,}   n回以上の出現
{0,n}  0~n回の出現
{n,m}  n~m回の出現

*?     最短一致(非貪欲)
+?     最短一致(非貪欲)
??     最短一致(非貪欲)
{n,m}? 最短一致(非貪欲)

^      文字列の先頭
$      文字列の末尾

.      改行以外の任意の1文字

\d     数字
\D     数字以外

\w     英数字とアンダースコア(_)
\W     英数字とアンダースコア以外

\s     空白文字
\S     空白文字以外

[abc]     a・b・cのいずれか1文字
[^abc]    a・b・c以外の1文字

|      OR(または)

()     グループ化

\b     単語の境界
\B     単語の境界以外

さいごに

正規表現は覚えるより慣れることが大切だと思うので、まずはよく使う記号から実際に試しまくってみます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

FIREを目指しながら、投資・プログラミング・家庭菜園・資格勉強に取り組んでいます。試行錯誤しながら積み上げる日々を記録するブログです。

コメント

コメントする

目次