my @sorted_dates = map { $_->{'date'} } sort { $a->{'year'} <=> $b->{'year} or $a->{'month'} <=> $b->{'month} or $a->{'day'} <=> $b->{'day'} } map { /(\d\d)-(\d\d)-(\d\d\d\d)/ ; { 'date' => $_, 'day' => $1, 'month' => $2, 'year' => $3 } } @start_date; my $minimum_date = $sorted_dates[-1];