On Wed, 6 Feb 2002, birgit kellner wrote: > my %hash = ( > 'keyone' => ['firstvalueone', 'firstvaluetwo], > 'secondkey' => ['anothervalueone', 'valuetwoforsecondkey'], > 'keythree' => ['thirdvalueone', 'thirdvaluetwo'] > > ); > > Can I sort the hash on the second element of the anonymous array? Sure, use the sort function: #!/usr/local/bin/perl -w use strict; my %hash = ( 'keyone' => ['firstvalueone', 'firstvaluetwo'], 'secondkey' => ['anothervalueone', 'valuetwoforsecondkey'], 'keythree' => ['thirdvalueone', 'thirdvaluetwo'] ); my @result = sort {$hash{$a}->[1] cmp $hash{$b}->[1]} keys %hash; foreach(@result) { print "$hash{$_}->[1]\n"; } Which prints out: ~$ ./sortme.pl firstvaluetwo thirdvaluetwo valuetwoforsecondkey -- Brett http://www.chapelperilous.net/ ------------------------------------------------------------------------ bug, n: A son of a glitch.Thread Previous