logo       

[ruby-list:42980] Re: 長い書名を短くするメソッド: msg#00041

lang.ruby.japanese

Subject: [ruby-list:42980] Re: 長い書名を短くするメソッド

なかだです。

At Tue, 7 Nov 2006 01:25:17 +0900,
Nobuyoshi Nakada wrote in [ruby-list:42979]:
> class String
> def shorten(start = 10, last = 4)
> if length > start + last
> self[0, start][/.*/m] + "…" + self.match(/.*/, -last)[0]

String#matchがインデックスを取るのは1.9からなので、1.8だとこう。

self[0, start][/.*/m] + "…" + self[index(/./m, -last)..-1]

しかし、

"長い書名を短くするメソッド".index(/.*/, -1) # => 26
"長い書名を短くするメソッド".index(/.*/, -2) # => 24
"長い書名を短くするメソッド".index(/.*/m, -1) # => 26
"長い書名を短くするメソッド".index(/.*/m, -2) # => nil

というのはなんとなくバグっぽいような。

--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦




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

News | FAQ | advertise