我有一个像这样的散列:
hash = {0 => ["a","b", "c"], 1 => ["x", "y", "z"]}
我想格式化这个散列,使每个数组都在一个新行上,元素不带引号,用逗号分隔:
a, b, c
x, y, z
我试过:
array = hash.values
#=> [["a","b", "c"], ["x", "y", "z"]]
array.each.join(", ")
#=> "a, b, c, x, y, z"
但是c
后面多了一个逗号。如何将数组分成两行?
最佳答案
如果您正在尝试做 CSV,请不要尝试自制它,它比看起来更棘手。例如,有时引号是必要的。
require 'csv'
puts CSV.generate { |csv|
hash.each_value { |row| csv << row }
}
# => a,b,c
# x,y,z
关于ruby - 如何将散列值格式化为 Ruby 中的逗号分隔文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44584213/