I have a regex written like this and it works fine
$data = '01:16:43.7';
($cdr{dhour}, $cdr{dmin}, $cdr{dsec}, $cdr{dfsec}) = $data =~ /(.*):(.*):(.*)(\..*)/;
print "H:$cdr{dhour}\n";
print "M:$cdr{dmin}\n";
print "S:$cdr{dsec}\n";
print "fs:$cdr{dfsec}\n";
output:
H:01
M:16
S:43
fs:.7
but...