タグ

ブックマーク / qiita.com/xtetsuji (1)

  • Perlの正規表現の一行モード(/s)と複数行モード(/m)の覚え方 - Qiita

    $str =~ /^--/m and print "複数行モードでマッチ\n"; $str =~ /<script.*?<\/script>/s and print "一行モードでマッチ\n"; 定義が分からない方は、後述で定義を解説しています。 一般に Perl では マッチ m// や置換 s/// の右側(左側ではないことに注意)に伴う上記の m や s のような英文字のことを修飾子 (modifier) と言います (see: perlre)。 私はこれをよく間違えたり忘れたりするので、こんな覚え方を考えてみました。 そもそも名前がややこしい 一行モード(Single line mode) m//s は、ドット(.)が 「複数行」 にわたってマッチするようになる 複数行モード(Multiple line mode) m//m は、"^" "$" が 「一行」 ごとにマッチするように

    Perlの正規表現の一行モード(/s)と複数行モード(/m)の覚え方 - Qiita
    pmakino
    pmakino 2013/05/06
    /Zと/zの違いは知らなかった
  • 1