There is a really useful site for testing strings against custom-made regexes: regex101.com.
You should test the false positives against your regex on that site to figure out why they’re passing (ex: test “55555555” --> your function returns true but it should return false).
Here is the part where your code is wrong. The \d+ is matching digits 1 or more times (jut right to Infinity). Instead of matching one or more times it should match only three times, therefore you have to use quantifiers. You should probably now what are they and how they work, since you are using them later in your regexp: