use warnings; use strict; use List::MoreUtils qw(mesh); my $str1="a,b,c"; my $str2="1,2,3"; my @a1 = split /,/, $str1; my @a2 = split /,/, $str2; my %hash = mesh(@a1, @a2); use Data::Dumper; $Data::Dumper::Sortkeys=1; print Dumper(\%hash); __END__ $VAR1 = { 'a' => '1', 'b' => '2', 'c' => '3' };