From: Urabe Shyouhei Date: 2008-10-16T14:18:48+09:00 Subject: [ruby-dev:36755] Re: [Bug #651] Regexp.new returns strange regexp object 卜部です Yukihiro Matsumoto さんは書きました: > まつもと ゆきひろです > > In message "Re: [ruby-dev:36753] [Bug #651] Regexp.new returns strange regexp object" > on Thu, 16 Oct 2008 03:31:52 +0900, Shyouhei Urabe writes: > > |以下のような等式が成立しなくなったことに気づきました。 > | > | % ruby1.9 -e 'p( //u == Regexp.new("", nil, "u") )' > | false > > これは1.9から三番目の引数が無視されることになったせいです。 > そのせいで、Regexp.newが生成したものはUTF-8固定ではなくなっ > てます。 > > が、不親切なのは確かなので、 > > * -v がなくても警告する > * メッセージをobsoleteからignoredに変更する > > という対応にしようと思います。 妥当ではないでしょうか。 ruby -Kn -e 'p "\xF0\x80\x80\xBC".match(Regexp.new(".", nil, "u"))' # あたりは事情を知らないとびっくりします。警告くらいは出てもいいと思います。 > 別の案としては、 > > * 'u'対応を復活させる > > というものもありえますが。 > uとかeはともかくnが欲しいことはあるんじゃないですかねえ。