Perl newb在这里。我不明白为什么下面的代码不起作用:
use strict;
my $file = shift;
open(FRED,'<',$file);
while (my $line = <FRED>) {
if ($line ~= /(fred)/i) {
print("$line mentions fred.\n");
}
}
我一直收到以下错误:
syntax error at ./regex2.pl line 11, near "$line ~"
syntax error at ./regex2.pl line 14, near "}"
由于编译错误,./regex.pl的执行中止。
答案 0 :(得分:8)
答案 1 :(得分:2)
正则表达式的语法为=~
而非~=
,请尝试
if($line =~ /fred/i) {
print "$line mentions fred.\n";
}
答案 2 :(得分:0)
问题在于:
操作符=〜而不是〜=