my $dt = "2003 % 05 % 1720:55:23"; my $date = sprintf "%d-%02d-%02d", $dt =~ /(\d+) % (\d+) % (\d{2})/; print "date - $date\n"; __output__ date - 2003-05-17