my @data = map { chomp; [ split ',' ] } ; Can reformatted as my @data = map { chomp; [ split ',' ] } ; #### my @data = map { chomp; [ map { /"(.*)"/ ? $1 : $_ } split ',' ] } ;