open fh, "<", "b.txt" or die $!; open fh1, "<", "a.txt" or die $!; my $i = 0; while(my $item1 = ) { open fh2, ">>", "a$i.txt" or die $!; while(my $item2 = ) { if($item1 =~ m/$item2/i) { print fh2 $item1, $/; print fh2 ; } } close fh2; seek fh1, 0, 0; } close fh; close fh1;