<<<<<<<<<'' =&m;>> perl中的语法是什么意思?

时间:2015-09-19 07:35:12

标签: perl

所以我理解perl有很多不寻常的语法,但是我在工作中遇到了一段代码片段,这让我感到困惑。有人可以向我解释一下这意味着什么:

<<'m'=~m>>
print $a unless $b;
return;
m
;

它看起来像HEREDOC语法,但不是我见过的任何形式。

1 个答案:

答案 0 :(得分:24)

运行B::Deparse有很多帮助,以便了解perl如何处理这段代码(假设它位于&#34; test.pl&#34;文件):

perl -MO=Deparse  test.pl 

告诉我们:

"print \$a unless \$b;\nreturn;\n" =~ //;
test.pl syntax OK

因此,正如您所看到的,perl正在尝试将空的regexpr与此字符串匹配:"print \$a unless \$b;\nreturn;\n"