使用RegularExpressionValidator控件,工具箱就有。
<div><asp:RegularExpressionValidator ID="RegularExpressionValidator1" ValidationExpression="[0-9]{4,8}" runat="server" ErrorMessage="输入长度为(4 ~ 8)位的数字!" Display="Dynamic" ControlToValidate="TextBox1"></asp:RegularExpressionValidator></div>
ControlToValidate="TextBox1"就是指你要控制的textbox的ID,ValidationExpression="[0-9]{4,8}"就是指你可以输入4--8位数字。此外还可以指定其他内容,譬如:ValidationExpression="[a-zA-Z0-9]{6,18}"是指可以输入长度为 (4 ~ 8) 位的英文字母或数字。这里面用到的都是“正则表达式”,感兴趣的话可以在网上搜一下。
那么你可以引入下面的:
using System.Text.RegularExpressions;
public static bool Validate(string regexString,string validateString)
{
Regex regex = new Regex(regexString);
return regex.IsMatch(validateString.Trim());
}
bool numOne=Validate("^[0-9]*$",TextBox1.Text);
限制输入数字:^[0-9]*$
限制输入n位的数字:^\d{n}$
限制输入至少n位数字:^\d{n,}$
限制输入m-n位的数字:^\d{m,n}$
限制输入零和非零开头的数字:^(0|[1-9][0-9]*)$
限制输入有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
限制输入有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
限制输入非零的正整数:^\+?[1-9][0-9]*$
限制输入非零的负整数:^\-[1-9][0-9]*$
限制输入非负整数(正整数 + 0) ^\d+$
限制输入非正整数(负整数 + 0) ^((-\d+)|(0+))$
限制输入长度为3的字符:^.{3}$
还可以限制如下类型:
整数:^-?\d+$
非负浮点数(正浮点数 + 0):^\d+(\.\d+)?$
正浮点数 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数(负浮点数 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
负浮点数 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮点数 ^(-?\d+)(\.\d+)?$
参考资料:http://msdn.microsoft.com/zh-cn/library/ms972966.aspx