按键分组哈希数组

时间:2013-07-07 14:28:42

标签: ruby arrays

我有一个由以下形式的哈希组成的数组:

[
  {:user=>"mike" etc},
  {:user=>"mike" etc},
  {:user=>"peter" etc},
  {:user=>"joe" etc}
]

有没有方便的方法根据用户密钥的值拆分组?最终结果应该是这样的:

[
  [{:user=>"mike" etc}, {:user=>"mike" etc}],
  [{:user=>"peter" etc}],
  [{:user=>"joe" etc}]
]

1 个答案:

答案 0 :(得分:36)

使用group_by

array.group_by{|h| h[:user]}.values