# 正規表現のオプション指定

# JavaScript

/pattern/i
  • /i : 大文字小文字区別しない

  • /m : 複数行

  • /g : 複数回

  • JavaScript は 複数行を対象にするモードでも .* がマッチしてくれない

  • なので代わりに [\s\S]* を使う ( (.|\s) でも良い? )

# Python

re.search(pattern, str, flags = re.IGNORECASE | re.MULTILINE | re.DOTALL)
  • 第3引数はマッチ回数なので「flags = 」をつけ忘れて「反映されないぞ」となったりする

# Ruby

/pattern/i
  • /i : 大文字小文字区別しない
  • /m : "." が改行文字にもマッチ
  • /s : SJIS としてマッチ
  • /e : EUC
  • /u : UTF-8
  • /n : 文字コードを意識しない
  • /x : 正規表現内の空白と # の後ろの文字を無視する

[ 📩 ご意見 ]