Skip to content

regex#

Character sets#

  • \d - 任意の数字
  • \D - 数値以外の値
  • \s - 空白文字
  • \S - 空白文字を除くすべて
  • \w - 任意の文字、数字、または下線文字
  • \W - 文字、数字、または下線文字を除くすべて

取り出さないグループ#

正規表現の一部として使うが、取り出さないグループは(?:...)を使います。 ( ... 部分は任意の正規表現です。)

m = re.match("([abc])+", "abc")
m.groups()

m = re.match("(?:[abc])+", "abc")
m.groups()

繰り返し文字#

  • regex+ 前の要素の1回以上の繰り返し
  • regex * 前の要素の0回以上の繰り返し
  • regex? 前の要素の0回または1回の繰り返し
  • regex{n} 前の要素の正確にn回の繰り返し
  • regex{n,m} 前の要素のnからm回の繰り返し
  • regex{n,} 前の要素のn回以上の繰り返し

特別な記号#

  • . -改行文字以外のすべての文字
  • ^ -行頭
  • $ -行末
  • [abc] - 角括弧内の任意の記号
  • [^abc] - 角かっこ以外の記号
  • a|b- 要素aまたはb
  • (regex) - 式は1つの要素として扱われます。また、式に一致する部分文字列が記憶されます

正規表現サンプル#

  • \x1b\[.*?m\[?'エスケープシーケンス
  • \w+\.*\w+@\w+\.\w+ メールアドレス
  • \w\w\w\w\.\w\w\w\w\.\w\w\w\wmac アドレス
  • [a-f0-9]+\.[a-f0-9]+\.[a-f0-9]+mac アドレス