У меня есть файл perl, который принимает txt-файлы и сравнивает их с другими словами в другом txt-файле, если они совпадают, тогда файл перемещается в другую папку
В настоящее время я получаю эту ошибку:
Unmatched ( in regex; marked by <-- HERE in m/\b( <-- HERE who\b/ at filter.pl line 45.
Моя строка 45 файла perl:
if ($x =~ m/\b$word\b/) {
Я не знаю, имеет ли это какое-либо отношение к остальной части файла, но я добавлю свой код просто в случае !! !! 1009 *
$dirtoget="/Users/jennie/crimes/";
opendir(IMD, $dirtoget) || die("Cannot open directory");
@thefiles= readdir(IMD);
foreach $f (@thefiles){
if ($f =~ m/.txt/){
#print "matches a txt file\n";
#print $f;
open (FILE, "/Users/jennie/crimes/$f")or die"Cannot open FILE";
if ( FILE eq "" ) {
close FILE;
}
else{
# print "In the Else\n";
while (<FILE>) {
foreach $word(split) {
foreach $x (@triggers) {
if ($x =~ m/\b$word\b/) {
print $word,"\n";
print $f,"\n";
copy("/Users/jennie/crimes/$f","/Users/jennie/crimeStories/$f")or die "Copy failed: $!";
close FILE;
}
}
}
}
}
}
}
closedir(IMD);
exit 0;
Ошибка не имеет для меня большого смысла. Я далек от прихоти в регулярных выражениях: - (