tags:

views:

77

answers:

7

I have a ruby array ['12','34','35','231']

I want to convert it into string '12','34','35','231' like that

Please give some hint Thanks

+6  A: 
> a = ['12','34','35','231']
> a.map { |i| "'" + i.to_s + "'" }.join(",")
=> "'12','34','35','231'"
Shadwell
Perhaps using `"'#{i}'"` instead.
Mladen Jablanović
A: 

array.inspect.inspect.gsub(/\[|\]/, "") could do the trick

christian
A: 
irb(main)> varA
=> {0=>["12", "34", "35", "231"]}
irb(main)> varA = Hash[*ex.collect{|a,b| [a,b.join(",")]}.flatten]
...
NinjaCat
A: 
irb(main):027:0> puts ['12','34','35','231'].inspect.to_s[1..-2].gsub('"', "'")
'12', '34', '35', '231'
=> nil
ngoozeff
A: 

i'll join the fun with...

['12','34','35','231'].join(",")

corroded
That gives 12,34,35,231. The single quotes are missing.
Alkaline
A: 

And yet another variation

a = ['12','34','35','231']
a.to_s.gsub(/\"/, '\'').gsub(/[\[\]]/, '')
Alkaline
A: 
> puts "'"+['12','34','35','231']*"','"+"'"
'12','34','35','231'

> puts ['12','34','35','231'].inspect[1...-1].gsub('"',"'")
'12', '34', '35', '231'
gnibbler