logo       

[ruby-list:42103] Re: jcodeのtr_sが正しく動かない: msg#00134

lang.ruby.japanese

Subject: [ruby-list:42103] Re: jcodeのtr_sが正しく動かない

Gimiteです。

> jcode.rbを見たところ、該当の正規表現が
> /([#{_regex_quote(from)}])\1+/
> となっているため、一文字の '-' にマッチしないようです。

これはバグですね…。

> jcode.rbを以下のように修正すると、
> 上記のケースでは期待通りに動くようになりますが、

えっと、
/([#{_regex_quote(from)}])\1*/
が正解ではないでしょうか?
/([#{_regex_quote(from)}])+/
だと、

p "foo".tr_s('a-z', 'A-Z') #==> "O"

になってしまいます。

> これだとマルチバイト文字を全く考慮していないので、
> jcode.rbの意図にあっていないと思います。

正規表現を使ってるので、マルチバイトには対応してると思います。

#でもtrはともかくtr_sってどういう場面で使うんでしょ…。


--
Gimite 市川 <gimite-6zHM6C0iXZ9UD6l512u9tw@xxxxxxxxxxxxxxxx>




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise