#!/usr/bin/perl use strict; my %R = ( 'blah' => 5 ); my %S = ( 'blah' => 2 ); my %T = ( 'blah' => 3 ); my @barary = qw(); my @fooary = (\%R, \%S, \%T); sub sortfunc { %$a->{'blah'} cmp %$b->{'blah'}; } @barary = sort sortfunc @fooary; print "$_->{blah} " foreach @barary; print "\n";