Just as a note, you probably mean to use rounded brackets instead of square ones in your regex. The square brackets are used for "sets". [\d] is exactly the same as \d, but not (\d).
Secondly, try to escape regex-type characters, such as dash, dot and so forth. /-/ versus /\-/.
Ah, thanks. In my haste to whip something together I mistakenly thought that the square brackets indicated "optional" characters/metacharacters. That would partially explain why the last data example doesn't pass since it requires one or more digits to follow the period.