如何按列表中每个单词的第二个字母对列表/数组进行排序

时间:2013-09-22 03:33:36

标签: ruby sorting

我有一个名字数组,我需要根据每个名字的第二个字母对数组进行排序。

所以如果我有一个名单= [ "GWashington", "AJackson", "RNixon", "BObama" ]

我如何对它进行排序,以便按姓氏组织数组?

2 个答案:

答案 0 :(得分:5)

使用sort_by

Names.sort_by {|name| name[1]}
#=> ["AJackson", "RNixon", "BObama", "GWashington"]

答案 1 :(得分:2)

我认为你只需要使用枚举器方法sort_by并传入适当的块。像这样的东西:

Names.sort_by{|name| name[1]}