如何按字母顺序对字符串的字符进行排序?

ste*_*ang 54 ruby sorting string

对于Array,有一种很好的sort方法来重新排列元素序列.我想为String实现相同的结果.

例如,我有一个字符串str = "String",我想用一个简单的方法按字母顺序对它进行排序"ginrSt".

是否有本地方式来启用此功能,还是应该包含mixins Enumerable

mol*_*olf 123

chars方法返回字符串字符的枚举.

str.chars.sort.join
#=> "Sginrt"
Run Code Online (Sandbox Code Playgroud)

不敏感地对案例进行排序:

str.chars.sort(&:casecmp).join
#=> "ginrSt"
Run Code Online (Sandbox Code Playgroud)

  • 或者`str.chars.sort(&:casecmp).join` (17认同)

fl0*_*00r 13

另外(只是为了好玩)

str = "String"
str.chars.sort_by(&:downcase).join
#=> "ginrSt"
Run Code Online (Sandbox Code Playgroud)