$_[0] =~ /^\((\d{2}):(\d{2})\)/)/;
должно быть
$_[0] =~ /^\((\d{2}):(\d{2})\)/;
Вы случайно продублировали два символа в конце строки.
PS & mdash; В качестве предостережения, у вас возникнут проблемы, если вы попытаетесь передать $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);