From: "金子尚史" Date: 1998-04-07T02:27:49+09:00 Subject: [ruby-list:7330] sub, gsub bug? はじめまして、金子と申します。 本日より ML に参加させていただきます。よろしくお願いします。 最近 ruby を使い始めまして、ちょこちょこと小さなスクリプトを 作って遊んでいるところなのですが、少々気になるところがありまし たので報告します。 ruby のバージョンは ruby 1.1b9_06(98/03/28) [i486-linux] です。 文字列に対する sub, gsub 処理で、 ruby> 'a'.sub('a', '\\') "\\\000" ruby> 'a'.sub('a', '\\\\') "\\" のように置換されますが、これは変な気がします。 ruby> 'a'.sub('a', '\\') "\\" ruby> 'a'.sub('a', '\\\\') "\\\\" が正解ではないでしょうか。 修正してみましたので、確認をお願いいたします。 間違っていたら、すみません。 --- re.c Tue Apr 7 01:15:15 1998 +++ re.c.org Tue Apr 7 01:01:23 1998 @@ -882,7 +882,7 @@ char *ss = s; c = *s++; - if (c != '\\' || s == e) continue; + if (c != '\\') continue; if (!val) val = str_new(p, ss-p); else str_cat(val, p, ss-p); @@ -911,6 +911,10 @@ while (BEG(no) == -1 && no > 0) no--; if (no == 0) continue; break; + + case '\\': + str_cat(val, s-1, 1); + continue; default: str_cat(val, s-2, 2); もう一つ、これはお願いなのですが、私は FM TOWNS版 Linux を使用していますが、ここで、パラメタなしで configure すると、 'i486-TOWNS-pc-linux ' not recognized といわれてしまいます。 configure --host=i486-pc-linux では通りますので、i[345]86-TOWNS-pc-linux は i[345]86-pc-linux とみなすように configure を修正していただけないでしょうか。 # 実はメインは Windows 95 マシンです。 # towns は最近、ほとんど使用していないのですが、今回は最新版 # 1.1b9_06 の動作を確認するためにインストールしました。 -- 金子 尚史 (Kaneko Naoshi) wbs01621@mail.wbs.or.jp