sub sortByDate { #get dates. will look like this: date:"2015-02-16", date:"YYYY-MM-DD", my ($aDate) = $a =~ /date:\"(\d{4}\-\d{2}\-\d{2})"/; my ($bDate) = $b =~ /date:\"(\d{4}\-\d{2}\-\d{2})"/; return ($aDate cmp $bDate); }