From: SAITO Shukaku Date: 2003-04-18T09:48:27+09:00 Subject: [ruby-list:37580] Re: 金額カンマ編集について At Fri, 18 Apr 2003 09:33:43 +0900, MORII,Tadashige wrote: > >  一応力業で下記のようにしましたけど、もっと簡単な方法があったら > 教えてくださいませ。 m(_ _)m > > def num_fmt(num) > a = num.to_s.reverse > b = "" > for i in 1..a.length > b = b + a[i-1..i-1] > if i % 3 == 0 and i != 0 and i != a.length then > b = b + "," > end > end > b.reverse > end > > print num_fmt(12344565890),"\n" 以前にも同様の話題が出た記憶があるんですが、思い付いたので書いてみました。 def num_fmt(num) num.to_s.reverse.gsub( /(\d{3})(?=\d)/, '\1,' ).reverse end print num_fmt(12344565890),"\n" print num_fmt(1234456589),"\n" print num_fmt(123445658),"\n" ///// ------------------------------------------------------------------ -O-O- 斉藤 秀格 (SAITO Shukaku) @ PUGH (Palm Users Group in Hokkaido) _ mailto:shukaku@sai10.nu (ぱふ) http://www.pugh.palm-j.com/