From: Robert Klemme Date: 2008-08-30T21:05:06+09:00 Subject: Re: Show elements of array separated On 30.08.2008 13:45, Kless wrote: > Thanks! I was too complicated: > > irb(main):001:0> foo = ['a', 'b', 'c'] > => ["a", "b", "c"] > irb(main):002:0> s = '' > => "" > irb(main):003:0> foo.each {|x| s += x.to_s + ', '} > => ["a", "b", "c"] > irb(main):004:0> puts s[0..-3] > a, b, c > => nil If you want to do it manually, I'd rather do something like this: irb(main):004:0> s = "" => "" irb(main):005:0> foo.each_with_index {|x,i| s << ", " unless i == 0; s << i.to_s} => ["a", "b", "c"] irb(main):006:0> s => "0, 1, 2" irb(main):007:0> Or even irb(main):010:0> foo.inject {|a,b| "#{a}, #{b}"} => "a, b, c" irb(main):011:0> ["a"].inject {|a,b| "#{a}, #{b}"} => "a" irb(main):012:0> [].inject {|a,b| "#{a}, #{b}"} => nil irb(main):013:0> But note the empty Array case. Kind regards robert