Sortowanie ciągów liczbowych w Ruby
Mam tablicę numerów wersji napisów, które chciałbym posortować, ale nie mogę ich przez całe życie uporządkować tak, jak chcę:
versions = [ "1.0.4", "1.0.6", "1.0.11", "1.1.9", "1.1.10", "1.0.16" ]
versions.sort_by {|v| [v.size]}
=> ["1.0.4", "1.0.6", "1.1.9", "1.0.11", "1.1.10", "1.0.16"]
Próbuję osiągnąć:
=> ["1.0.4", "1.0.6", "1.0.11", "1.0.16", "1.1.9", "1.1.10"]
Wydaje się, że ma to coś wspólnego z leksykograficznie, ale mam problem z wypracowaniem reguły sortowania, którą muszę zastosować.
Każda pomoc lub punkt we właściwym kierunku byłby bardzo mile widziany.