use strict; use warnings; use Data::Dumper; my @erg; my @all=(["what", "is", "the", "matrix"],["matrix", "reloaded", "is", "no", "good"]); print "\n",Dumper(\@all); for (my $i = 0; $i < @{$all[0]}; $i++) { for (my $j = 0; $j < @{$all[1]}; $j++) { $erg[0][$i] ||= sprintf "%u", ($all[0][$i] eq $all[1][$j]); $erg[1][$j] ||= sprintf "%u", ($all[0][$i] eq $all[1][$j]); } } print "\n",Dumper(\@erg);