Perl中的RegExp错误

Chr*_*ris 1 regex perl

将regexp绑定到perl中的参数,我收到以下错误: syntax error at ./ctime.pl line 23, near "/^\((\d{2}):(\d{2})\)/)" Execution of ./ctime.pl aborted due to compilation errors.

这是我尝试绑定它的行:

$_[0] =~ /^\((\d{2}):(\d{2})\)/)/;

我试图匹配一些小时/分钟的组合,例如(99:99(01:24).总会有四位数字.

ike*_*ami 9

$_[0] =~ /^\((\d{2}):(\d{2})\)/)/;
Run Code Online (Sandbox Code Playgroud)

应该

$_[0] =~ /^\((\d{2}):(\d{2})\)/;
Run Code Online (Sandbox Code Playgroud)

你不小心在行尾附近复制了两个字符.


PS - 请注意,如果您尝试将$1包含此代码的函数作为参数传递或类似因为$_[0]直接使用,则会遇到问题.

sub f {
   print("$_[0]\n");              # a
   print $_[0] =~ /a/ ?1:0,"\n";  # 1
   print("$_[0]\n");              # [empty string]
   print $_[0] =~ /a/ ?1:0,"\n";  # 0
}
'a'=~/(.)/;
f($1);
Run Code Online (Sandbox Code Playgroud)