Answer the question
In order to leave comments, you need to log in
Task of the century. How to write a regular expression so that it is not all zeros?
Hello everyone) Need your help
Write a regular expression
condition:
-All digits
-Length 8 or 11
-First two characters - not two zeros
-Third character: 3, 6, 7, 8, 9
-After the third character, not all zeros to the end.
here is what I got
^\d[1-9][36789]\d{5}|[1-9]\d[36789]\d{5}|\d[1-9][36789]\ d{8}|[1-9]\d[36789]\d{8}$
I can't implement the last condition.
Answer the question
In order to leave comments, you need to log in
^(?!0{2,2})\d{2,2}[36789](?!0*$)(?:\d{5,5}|\d{8,8})$
or so
^\d{2}(?<!0{2})[36789](\d{5}(?<!0{5})|\d{8}(?<!0{8}))$
To highlight numbers of the form "not all zeros of a given length" you can use the solution from SO: stackoverflow.com/a/7865029/774651
This first checks if the string is long 4-6 (?=[0-9]{4.6}$), then skips the 0s 0*and search for a non-zero [1-9] followed by at least 3 digits[0-9]{3,}.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question