J'ai un tableau de rubis comme ['12','34','35','231']
.
Je veux le convertir en une chaîne comme '12','34','35','231'
.
Comment puis je faire ça?
Je vais rejoindre le plaisir avec:
['12','34','35','231'].join(', ')
ÉDITER:
"'#{['12','34','35','231'].join("', '")}'"
Une interpolation de chaîne pour ajouter le premier et le dernier guillemet simple: P
JSON.parse("[12, 39, 100]")
renverra un tableau.> a = ['12','34','35','231'] > a.map { |i| "'" + i.to_s + "'" }.join(",") => "'12','34','35','231'"
la source
"'#{i}'"
place.essayez ce code
['12','34','35','231']*","
vous donnera le résultat "12,34,35,231"
J'espère que c'est le résultat que vous, faites le moi savoir
la source
array.map{ |i| %Q('#{i}') }.join(',')
la source
"'#{i}'"
place."string_arr.map(&:inspect).join(',') # or other separator
la source
Je trouve cela lisible et rubis:
add_quotes =- > x{"'#{x}'"} p ['12','34','35','231'].map(&add_quotes).join(',') => "'12','34','35','231'"
la source
> puts "'"+['12','34','35','231']*"','"+"'" '12','34','35','231' > puts ['12','34','35','231'].inspect[1...-1].gsub('"',"'") '12', '34', '35', '231'
la source
Et encore une autre variation
a = ['12','34','35','231'] a.to_s.gsub(/\"/, '\'').gsub(/[\[\]]/, '')
la source
irb(main)> varA => {0=>["12", "34", "35", "231"]} irb(main)> varA = Hash[*ex.collect{|a,b| [a,b.join(",")]}.flatten] ...
la source
irb(main):027:0> puts ['12','34','35','231'].inspect.to_s[1..-2].gsub('"', "'") '12', '34', '35', '231' => nil
la source
Vous pouvez utiliser une approche de programmation fonctionnelle, en transformant les données:
['12','34','35','231'].map{|i| "'#{i}'"}.join(",")
la source
array.inspect.inspect.gsub(/\[|\]/, "")
pourrait faire l'affairela source