use strict; use warnings; ; while(){ chomp; my @line = split /\s+/; my $from = join( " ", splice( @line, 2, $#line-5) ); my ($reqid, $dest, $date, $time, $pages, $rcv) = @line; print join "|", ($reqid, $dest, $from, $date, $time, $pages, $rcv); print "\n"; } __DATA__ REQID DEST FROM DATE TIME nPages RCV 138454 mail_room Marco's Pizza 12/26 21:52 1 rcv 138446 custsvc 973 618 0577 12/26 18:44 1 rcv 138445 county2 spam 12/26 18:41 3 rcv 138444 custsvc spam 12/26 18:30 1 rcv 138439 county2 7182737253 12/26 17:54 2 rcv 138438 county2 Acme Products, Inc. 12/26 17:52 1 rcv