我正在使用Perl编写一个小脚本,我很困惑哪个逻辑运算符必须用于比较字符串
示例代码:
if (($app eq "appname1")OR($app eq "appname2")OR($app eq "appname3"))
我是否必须使用OR
(或)||
答案 0 :(得分:6)
一般的经验法则往往是:
||
组合布尔操作,例如if ($app eq "appname1" || $app eq "appname2" || $app eq "appname3") { ... }
or
进行流量控制,例如open my $fh, '<', $filename or die "Open failed: $!"
答案 1 :(得分:4)
在这种情况下,它并不重要,因为:
eq
的优先级高于||
和or
这是perlop所说的:
Binary&#34;
or
&#34;返回两个周围的逻辑分离 表达式。除了极低之外,它等同于||
优先级。
另请注意,OR
(大写)不是有效的Perl运算符,但or
(小写)是。