私は 2 つの配列を持っています。1 つは検索語で、もう 1 つはファイルからフェッチされた複数の行です。ネストされた foreach ステートメントがあり、すべての組み合わせを検索していますが、他の多くの一致があることを知っていても、最後の一致のみが表示されます!! 私は多くの異なるバージョンのコードを試しましたが、これが私の最後のものです:
open (MYFILE, 'searchTerms.txt');
open (MYFILE2, 'fileToSearchIn.xml');
@searchTerms = <MYFILE>;
@xml = <MYFILE2>;
close(MYFILE2);
close(MYFILE);
$results = "";
foreach $searchIn (@xml)
{
foreach $searchFor (@searchTerms)
{
#print "searching for $searchFor in: $searchIn\n";
if ($searchIn =~ m/$searchFor/)
{
$temp = "found in $searchIn \n while searching for: $searchFor ";
$results = $results.$temp."\n";
$temp = "";
}
}
}
print $results;