#!/usr/local/bin/perl use strict; while () { chomp(); my @rows = split(/\s+/, $_, 7); print join ";", @rows , "\n"; } __DATA__ abc 322 2/3/09 aaa aadda dasdas a1 a2 a3 def 433 3/4/08 dasd bdbdbd wings b1 b2 b3 b4 b5 #### #!/usr/local/bin/perl use strict; use Data::Dumper; # Named column headings my @columnNames = qw{ name tel col3 col4 col5 col6 notes }; while () { chomp(); my @rows = split(/\s+/, $_, scalar(@columnNames)); my %headings; @headings{@columnNames} = @rows; print "Dump headings hash: ".Dumper(\%headings)."\n"; } __DATA__ abc 322 2/3/09 aaa aadda dasdas a1 a2 a3 def 433 3/4/08 dasd bdbdbd wings b1 b2 b3 b4 b5