(split(/\./,$_,3))[1] =~ /^(\d+)([A-Za-z]+)(\d+)$/ or die "improperly formed data: $_"; [$_, $3, $months{$2}, sprintf("%02d", $1) ]