#! perl -slw use strict; use Data::Dumper; ##.............................V third parameter my %hash = map{ split ',', $_, 2 } ; print Dumper \%hash; __DATA__ a name, an address, with commas, another name, and another address, also with commas and a third name, and address fourth name, fourth address #### C:\test>junk4 $VAR1 = { 'and a third name' => ' and address ', 'a name' => ' an address, with commas, ', 'fourth name' => ' fourth address ', 'another name' => ' and another address, also with commas ' };