use strict; use warnings; my %day_of_week_order = ( Monday =>1, Tuesday => 2, Wednesday =>3, Thursday => 4, Friday => 5, Saturday => 6, Sunday => 7); my %days = map{chomp; $_=>1}; $days{Friday} = 1; # make sure Friday is there foreach my $day (sort{my $A = $day_of_week_order{$a}; my $B = $day_of_week_order{$b}; $A <=> $B } keys %days) { print "$day\n"; } =prints Monday Friday Saturday Sunday =cut __DATA__ Monday Saturday Sunday #### exists ($days{Friday}) ? print "Friday was there\n" : print "Friday wasn't there\n";