my @lines = ( 'Bob Smith bsmith 00001234567 01/01/1986 00:00:00', 'Mary Ann Doe mdoe 00001234568 01/01/1986 00:00:00 00001234563 01/01/1986 00:00:00', 'Gilligan Q Smith gsmith 00001234569 01/01/1986 00:00:00'); foreach $line (@lines){ $data = $line; $line =~ s/^(\D+)(.*)/$1/; $data =~ s/^(\D+)(.*)/$2/; $data =~ s/(\d+)\s(\w+)\s(\w+)/$line,$1,$2,$3,\n/g }