Азбучен ред на списък с хеш ключове в perl?

Искам да направя масив, който съхранява подреден по азбучен ред списък с хеш ключове. Опитах този метод:

@sorted = sort { $hash{$a} cmp $hash{$b} } keys %hash; 

... Но се оказва, че това връща списък с хеш ключове, сортирани по стойност (докато искам списък с хеш ключове, сортирани по азбучен ред).

Някакви предположения?


person jake9115    schedule 23.05.2013    source източник


Отговори (2)


my @sorted = sort { $a cmp $b } keys %hash;

или просто

my @sorted = sort keys %hash;
person ikegami    schedule 23.05.2013
comment
А, да, благодаря, че ми показа и двете посоки, концептуално помага да видя колко лесно се опростява изразът - person jake9115; 23.05.2013

Хеш ключовете са само низове:

@sorted = sort keys %hash;
person chepner    schedule 23.05.2013