我有一个Ruby数组,如
我想将它转换成一个字符串,如
我该怎么做?
['12','34','35','231']
。我想将它转换成一个字符串,如
'12','34','35','231'
。我该怎么做?
我也加入了这个活动:
['12','34','35','231'].join(', ')
# => 12, 34, 35, 231
编辑:
"'#{['12','34','35','231'].join("', '")}'"
# => '12','34','35','231'
一些字符串插值来添加第一个和最后一个单引号 :P
> a = ['12','34','35','231']
> a.map { |i| "'" + i.to_s + "'" }.join(",")
=> "'12','34','35','231'"
"'#{i}'"
代替。 - Mladen Jablanović尝试运行以下代码 ['12','34','35','231']*","
将会得到结果"12,34,35,231"
希望这是您所期望的结果,请告诉我。
array.map{ |i| %Q('#{i}') }.join(',')
"'#{i}'"
代替。” - Andrew Grimmstring_arr.map(&:inspect).join(',') # or other separator
add_quotes =- > x{"'#{x}'"}
p ['12','34','35','231'].map(&add_quotes).join(',') => "'12','34','35','231'"
> puts "'"+['12','34','35','231']*"','"+"'"
'12','34','35','231'
> puts ['12','34','35','231'].inspect[1...-1].gsub('"',"'")
'12', '34', '35', '231'
还有另一种变体
a = ['12','34','35','231']
a.to_s.gsub(/\"/, '\'').gsub(/[\[\]]/, '')
irb(main)> varA
=> {0=>["12", "34", "35", "231"]}
irb(main)> varA = Hash[*ex.collect{|a,b| [a,b.join(",")]}.flatten]
...
irb(main):027:0> puts ['12','34','35','231'].inspect.to_s[1..-2].gsub('"', "'")
'12', '34', '35', '231'
=> nil
JSON.parse("[12, 39, 100]")
会返回一个数组。 - zx1986