It works fine for me. I changed the char classes to \d, but that doesn't change anything. I backslashed the '.' so it matches a literal '.' and not any character. Perhaps your string has whitespace around it that you're not expecting?
Jeff japhy Pinyan,
P.L., P.M., P.O.D, X.S.:
Perl,
regex,
and perlhacker How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart