tags:

views:

160

answers:

5

I am using regular expressions for matching only digits, minimum 10 digits, maximum 14. I tried:

^[0-9]
+1  A: 

If I understand your question correctly, this should work:

\d{10,14}

Note: As noted in the other answer.. ^\d{10,14}$ to match the entire input

markt
+3  A: 

I'd give:

^\d{10,14}$

a shot.

I also like to offer extra solutions for RE engines that don't support all that PCRE stuff so, in a pinch, you could use:

^[0-9]{10,14}$

If you're RE engine is so primitive that it doesn't even allow specific repetitions, you'd have to revert to either some ugly hack like fully specifying the number of digits with alternate REs for 10 to 14 or, easier, just checking for:

^[0-9]*$

and ensuring the length was between 10 and 14.

But that won't be needed for this case (ASP.NET).

paxdiablo
+2  A: 

try this

@"^\d{10,14}$"

\d - matches a character that is a digit

This will help you

anishmarokey
+3  A: 
^\d{10,14}$

regular-expressions.info

  • Character Classes or Character Sets

    \d is short for [0-9]

  • Limiting Repetition

    The syntax is {min,max}, where min is a positive integer number indicating the minimum number of matches, and max is an integer equal to or greater than min indicating the maximum number of matches.


The limited repetition syntax also allows these:

^\d{10,}$ // match at least 10 digits
^\d{13}$  // match exactly 13 digits
polygenelubricants
A: 

Please bookmark http://www.regularexpressions.info too, while you're at it.

bartvdvliet