[ruby-list:37702] Re: マッチした部分を配列にしまう方法

From: tsuji.td@...
Date: 2003-05-20 07:23:18 UTC
List: ruby-list #37702
辻(忠)です。

>まつもと ゆきひろです
>
>In message "[ruby-list:37664] Re: マッチした部分を配列にしまう方法"
>    on 03/05/09, Koji Arai <JCA02266@nifty.ne.jp> writes:
>
>|1.7 の変更は、scan や gsub などにはとても便利なのですが 
>|String#=~ にも適用したのはやりすぎではないかと言いたいのでしょ
>|うね私は(^^;
>
>ということは、どういうことなんでしょう。
>
>  * この修正はあるべきでない → 理由は?
>  * この修正は非互換である   → どう対応するか?
>
>のいずれかだとは思うのですが、前者なら議論した上で合意ができ
>れば元に戻せばよいことですし、後者なら移行パスを検討すれば良
>いと思います。

後者に1票です。

先にレスしたように私自身
 (string =~ reg)
形式での比較が「正しい形」だと誤認していましたので、
同じような勘違いをしている人は多いのではないかと思います。
そんな人のプログラムは 1.6 => 1.8 の移行で不具合がでることになります。

できれば段階を踏んで、

 1.最初のリリースでは String#=~ の左辺文字列を正規表現として処理するが、推奨されない旨の警告が出る
 2.その次のリリースの String#=~ は左辺文字列をRegexp.quote で処理し、警告も出さない

というのがありがたいです。

以上です。

In This Thread