• ベストアンサー

ハッシュのソート

ハッシュに以下のようなデータが格納されている場合 valueでソートして表示するにはどうしたらよいでしょうか? 教えてください。 %hoge = (a => 10, b => 3, c => 7); 表示 a => 10 c => 7 b => 3

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

#ハッシュからまずキーを配列として取り出し値によってキーをソートする %hoge = (a => 10,b => 3, c => 7); foreach $x (sort { $hoge{$b} <=> $hoge{$a} } keys %hoge){ print "$x => $hoge{$x}\n"; }