>>658
あ、すまんね
そこのへんだけ直前に書き換えたんだ
案の定間違ってるな

irb> ['30歳', '2歳', '10歳'].each{|a| p a.scan(/\d+/)[0].to_i}
30
2
10

ってことで、ブロック内で数字部分を抜き出して整数にしてるんだということがわかってもらえればよかった
それぞれの要素に対して「数字部分を抜き出して整数にしたもの」で比較してソートすれば、おそらくうまくいく