Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: Sort: By keys, values, and their returning values.

by kyle (Abbot)
on Nov 25, 2009 at 15:16 UTC ( #809347=note: print w/replies, xml ) Need Help??


in reply to Sort: By keys, values, and their returning values.

If you wanted to sort keys by their values, and then by key (when the values are identical), you could do it this way:

use 5.010; my %h = ( a => 1, b => 1, c => 2, ); say join '|', sort { $hash{$a} <=> $hash{$b} || $a cmp $b } keys %h; __END__ a|b|c

In this example, I've sorted the keys using cmp since they're strings, but you can use <=> there too, if that will work better for what you're doing.