Regular expression to match any number except for one containing repeated zeros

I want to match large numbers in my data but sometimes the data includes repeated zeros for emphasis rather than phone numbers. How can I identify numbers at least nine digits long and not include any numbers with repeated zeros (say, at least 5)? For example:

match: call me at 19083910893

don't match: this x1000000000

I tried [0-9]+(?!0+) but this isn't what I need because the negative lookahead doesn't unmatch results found with the [0-9]+. Somehow, (\d)(?!0+)\d+ works in tests but I don't really understand why.

Read more here:

Content Attribution

This content was originally published by mer at Recent Questions - Stack Overflow, and is syndicated here via their RSS feed. You can read the original post over there.

%d bloggers like this: