Utiliser la fonction keys associée à la fonction sort :
#!/usr/local/bin/perl
use strict;
my %hash = (
5 => "Voiture",
2 => "Camion",
3 => "Auto"
);
foreach my $tmp(sort{$a cmp $b}(keys(%hash)))
{
print "$tmp => $hash{$tmp}\n";
}
Va imprimer le contenu du hashage trié selon la valeur numérique de la clef.
Pour plus d'informations dans la documentation de Perl :