You can replace those 4 substition with one
transliteration.
$line =~ tr/\t\n\r"/\x09\x0A\x0D'/;
And, then, since the date format is fixed, just match up until the period.
$line =~ s{
( # start capturing into $1
[\d|/|\s|:]+ # match digits,
# forward slashes, spaces,
# or colons 1 or more times
)
\. # stop capturing into $1
# when you hit a period
\d\d\d} # match three more digits
{$1}x; # replace it all w/ $1
enoch
edit: removed the
ig options from the
tr because they are not necessary (and not even valid) options.