Regex that accepts only numbers (0-9) and NO characters
Regex that accepts only numbers (0-9) and NO characters
In regex ^[0-9] matches anything beginning with a digit, including strings like “1A”. To avoid a partial match, append a $ to the end:
^[0-9]*$
Above code accepts any number of digits, including none. To accept one or more digits, change the * to +. To accept exactly one digit, remove the *.
NOTE:
Mixed up the arguments to IsMatch. The pattern is the second argument, not the first:
if (!System.Text.RegularExpressions.Regex.IsMatch(textbox.Text, "^[0-9]*$"))
Attention:JavaScript \d is equivalent to [0-9], but in .NET, \d by default matches any Unicode decimal digit, including exotic fare like ႒ (Myanmar 2) and ߉ (N’Ko 9). Unless our app is prepared to deal with these characters, stick with [0-9] or supply the RegexOptions.ECMAScript flag.