我有两个数组,一个带有搜索词,另一个是从文件中获取的多行。我有一个嵌套的 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;