6 digits regular expression

Regexvb.net

Regex Problem Overview


I need a regular expression that requires at least ONE digits and SIX maximum.

I've worked out this, but neither of them seems to work.

^[0-9][0-9]\?[0-9]\?[0-9]\?[0-9]\?[0-9]\?$

^[0-999999]$

Any other suggestion?

Regex Solutions


Solution 1 - Regex

You can use range quantifier {min,max} to specify minimum of 1 digit and maximum of 6 digits as:

^[0-9]{1,6}$

Explanation:

^     : Start anchor
[0-9] : Character class to match one of the 10 digits
{1,6} : Range quantifier. Minimum 1 repetition and maximum 6.
$     : End anchor

Why did your regex not work ?

You were almost close on the regex:

^[0-9][0-9]\?[0-9]\?[0-9]\?[0-9]\?[0-9]\?$

Since you had escaped the ? by preceding it with the \, the ? was no more acting as a regex meta-character ( for 0 or 1 repetitions) but was being treated literally.

To fix it just remove the \ and you are there.

See it on rubular.

The quantifier based regex is shorter, more readable and can easily be extended to any number of digits.

Your second regex:

^[0-999999]$

is equivalent to:

^[0-9]$

which matches strings with exactly one digit. They are equivalent because a character class [aaaab] is same as [ab].

Solution 2 - Regex

  ^\d{1,6}$

....................

Solution 3 - Regex

You could try

^[0-9]{1,6}$

it should work.

Solution 4 - Regex

^[0-9]{1,6}$ should do it. I don't know VB.NET good enough to know if it's the same there.

For examples, have a look at the Wikipedia.

Solution 5 - Regex

\b\d{1,6}\b

Explanation

\b    # word boundary - start
\d    # any digits between 0 to 9 (inclusive)
{1,6} # length - min 1 digit or max 6 digits
\b    # word boundary - end

Solution 6 - Regex

/^[0-9][0-9][0-9][0-9]$/

Enter 4 digit number only

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionframaraView Question on Stackoverflow
Solution 1 - RegexcodaddictView Answer on Stackoverflow
Solution 2 - RegexLukeHView Answer on Stackoverflow
Solution 3 - RegexJamesView Answer on Stackoverflow
Solution 4 - RegexeckesView Answer on Stackoverflow
Solution 5 - RegexSridharKrithaView Answer on Stackoverflow
Solution 6 - RegexSushilView Answer on Stackoverflow