我要谈两点,如:
hash_1 = {:a=>{:b=>3, :c=>{:stuff1=>[{:d=>1, :e=>2}, {:d=>4, :e=>2}], :stuff2=>[{:f=>33, :g=>44}, {:f=>55, :g=>66}], :h=>4}}}
hash_2 = {:a=>{:b=>3, :c=>{:stuff1=>[{:d=>8, :e=>5}, {:d=>7, :e=>5}], :stuff2=>[{:f=>45, :g=>89}, {:f=>78, :g=>67}], :h=>4}}}
改为:
result = {:a=>{:b=>3, :c=>{:stuff1=>[{:d=>1, :e=>2}, {:d=>4, :e=>2}, {:d=>8, :e=>5}, {:d=>7, :e=>5}], :stuff2=>[{:f=>33, :g=>44}, {:f=>55, :g=>66}, {:f=>45, :g=>89}, {:f=>78, :g=>67}], :h=>4}}}
我发现,post,但我的案件充满了nes,因此,一些良好的垃圾手的任何帮助都将受到赞赏。
基本上,我想“合并”同名关键人物的阵列价值,。 对应这些钥匙的数值为arrays。 当然,replacecode>hash_1 s :stuff1
和
hash_2
s :stuff1
阵列(类似:stuff2
),但我希望有一个阵列<>+>>>>>>>>>>>>>>>>>+>>>>>>>>>>>>>>>>>>> 合并类型,而不是更新/替换或合并! ......
hash_1.merge(hash_2) # NOT what I want => {:a=>{:b=>3, :c=>{:stuff1=>[{:d=>8, :e=>5}, {:d=>7, :e=>5}], :stuff2=>[{:f=>45, :g=>89}, {:f=>78, :g=>67}], :h=>4}}}
I m 使用了1.9.2, btw。 我知道已经过迟,虽然我不认为这影响到答案。
感谢!