我有一个代码作为
$wrk = OC192-1-1-1; @temp = split (/-/,$wrk); if ($temp1[3] =~ /101 || 102 /) { print "yes"; } else { print "no"; }
输出:
yes
需要知道为什么这是打印是的.我知道正则表达式| OR运算符支持.但需要知道为什么||作为输出给出“是”
解决方法
这是因为||通过始终匹配任何东西,使正则表达式匹配成功.
所以它基本上与下面的任何一个匹配$temp1 [3](不存在)
>“101”
>“”
>“102”
我添加双引号只是为了解释.