>> %w(1 2 10 3 9 25).sort{|a,b| a <=> b}
["1", "10", "2", "25", "3", "9"]
>> %w(1 2 10 3 9 25).sort{|a,b| a.to_i <=> b.to_i}
["1", "2", "3", "9", "10", "25"]
但这种怎么搞:
%w(1 2 1-1 1-10 1-3 2-5 2-11 1-1-5)
我能想到的是先把它转成数字,但这个转数字也不那么好转啊……
写个正则倒是可以
1-1 => 100001
1-10 => 100010
但
1-1-5 => 10000100005
这样的正则写不来的说……