我有变量包含: No such file or directory at ./EMSautoInstall.pl line 50.
我想创建变量contains No such file or directory和另一个包含at ./EMSautoInstall.pl line 50.
我的REGEX是: my ( $eStmnt, $lineNO ) = $! =~ /(.*[^a][^t])(.*)/;
当我打印两个变量时,第一个包含No such file or directory但第二个包含空.
为什么会这样?
你真的在$!变量中有那个字符串吗?因为通常情况下,at line...部件是由die和添加的warn.我怀疑你只是
$! = "No such file or directory";
Run Code Online (Sandbox Code Playgroud)
你的正则表达式匹配,因为它允许空字符串
/(.*[^a][^t])(.*)/
Run Code Online (Sandbox Code Playgroud)
即第二次捕获也不匹配任何东西,第一次捕获可以是任何不结束的东西at.
确认,
print $!;
Run Code Online (Sandbox Code Playgroud)
应该打印No such file or directory.