in reply to Comparing arrays ...

This appears straightforward. Go through the first file and make a hash table with keys like you expect that lines in the 2nd file will look like (it appears that you know exactly to the character what they will be if it is a "match"). Go through each line in the 2nd file and print the match if you have seen this line data in file1 before. You didn't show it, but I don't see any reason why the NAME05 line wouldn't match like the NAME10 line does.
#!/usr/bin/perl -w use strict; open(FILE, "data_file.txt") || die "Could not open file data_file"; open(FILE2, "data_file2.txt") || die "Could not open file data_file2"; my %file1; while (<FILE>) { chomp; tr/,/ /; $file1{$_}=1; } while (<FILE2>) { chomp; print "$_ *** matched\n" if $file1{$_}; } __END__ Prints: DATA03 08 NAME10 *** matched DATA02 12 NAME05 *** matched data_file1: DATA01,01,NAME02 DATA02,12,NAME05 DATA03,08,NAME10 data_file2: DATA11 11 NAME22 DATA03 08 NAME10 DATA02 12 NAME05 __END__ Prints: DATA03 08 NAME10 *** matched DATA02 12 NAME05 *** matched data_file1: DATA01,01,NAME02 DATA02,12,NAME05 DATA03,08,NAME10 data_file2: DATA11 11 NAME22 DATA03 08 NAME10 DATA02 12 NAME05