From: Wakou Aoyama Date: 2000-05-16T13:45:24+09:00 Subject: [ruby-list:22611] Re: p option of Regexp 青山です。 On Mon, 15 May 2000 17:26:21 +0900, matz@netlab.co.jp (Yukihiro Matsumoto) wrote: > ドット ^, $ > デフォルト 改行× 改行× > 単独行/s 改行○ 改行× > 複数行/m 改行× 改行○ > 純粋複数行/ms 改行○ 改行○ > > さて、現時点でのRubyのデフォルトは「複数行」です。さらに言う > と「単独行」と言う概念はありません。で、現在/pが付くとPerlの > 「デフォルト」の挙動をとっていますが、これより「純粋複数行」 > の方が望ましいと言う話でしょうか? /p の場合は「単独行」では? デフォルト (Perl の「複数行」) \A__________$\n^__________$\n^__________\z ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ gsub(/.*/, '') で改行まで無くなってしまうのを防ぐ為に、. は改行にマッ チしない。 /m (Perl の「純粋複数行」) \A__________$\n^__________$\n^__________\z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 複数行を扱う場合、このモードが欲しいのでは? 以下は、^, $ と同じ意味の \A, \z があるので、実質、不要。 /p (Perl の「単独行」) \A^__________\n__________\n__________$\z ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Perl のデフォルト \A^__________\n__________\n__________$\z ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ -- 青山 和光 Wakou Aoyama