我有一个像这样的数组:
array = [[1, 'Something', '123456321'], [2, 'Something, Something', '123456321, 1234563212']]
我想循环子数组,如果每个数组的第二个元素都包含逗号,我想用逗号分割该元素,然后在数组中制作该子数组的副本,但是单个值没有逗号。所以我想得到这个结果:
array = [[1, 'Something', '123456321'], [2, 'Something', '123456321'], [2, 'Something', 1234563212']]
我想要注意的是,如果数组的第二个元素由两个或多个元素组成,例如' Something,Something' 那么第三个元素会自动生成具有相同的结构' 123456321,1234563212' 。所以我的问题是,是否有可能在轨道上使用ruby做这样的事情? 谢谢!
答案 0 :(得分:3)
array.flat_map do |id, names, values|
parsed_names = names.split(', ')
parsed_values = values.split(', ')
parsed_names.zip(parsed_values).map { |name, value| [id, name, value] }
end