From: ogino@... Date: 2000-03-03T14:01:35+09:00 Subject: [ruby-list:21157] あったらうれしいメソッド to_n, to_n!, to_s! 荻野です。あったらうれしいメソッドということで書いてみます。 多分整数だけども少数点を含むかも知れない文字列を変換するときに、 if str =~ /^[-+]?[0-9]*$/ str.to_i else str.to_f end とするのは to_n というメソッドがあればと思うのですが、どうでしょう。 「小数点の可能性があると分かっているとき」to_f で統一すれば良いのかも しれませんが、つい無意識にその可能性を忘れてしまって to_i を使ってしま うのです。これを to_n を習慣にすればうっかりミスが減るかも、と思うので す。(汎用性のあるクラスやメソッドを目指したいという気はあっても、いつ もそういう可能性を見落としてしまう...) それから、書き方の問題なのかもしれませんが、変数が String を指している と思っていたら実は nil で途中でとまってしまうという目に良くあっていま す。そこで、 str = str.to_s (基本の考えとしては str = '' if str == nil ですが) というのを入れるのですが、これが str.to_s! と書けるとちょっとうれしいと思うのですが、これは私だけでしょうか? 同様に to_i!, to_f! (, to_n!) なども発想としてあるのではないでしょうか。 CGI にしろ、テキストファイルにしろ読むときは String と nil のどちらか で、処理としては String や数が欲しいというときは良くあると思いますが、 重宝すると思います。 ご意見をお待ちしております。 -- 荻野 充 (おぎの みつる) ... 「萩(はぎ)」にあらず 名古屋大学消費生活協同組合