c#如何判断文本框中是否是数字

来源:百度知道 编辑:UC知道 时间:2024/05/30 20:45:07

是用正则表达式
public bool IsNum(String strNumber)
{
Regex objNotNumberPattern=new Regex("[^0-9.-]");
Regex objTwoDotPattern=new Regex("[0-9]*[.][0-9]*[.][0-9]*");
Regex objTwoMinusPattern=new Regex("[0-9]*[-][0-9]*[-][0-9]*");
String strValidRealPattern="^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$";
String strValidIntegerPattern="^([-]|[0-9])[0-9]*$";
Regex objNumberPattern =new Regex("(" + strValidRealPattern +")|(" + strValidIntegerPattern + ")");

return !objNotNumberPattern.IsMatch(strNumber) &&
!objTwoDotPattern.IsMatch(strNumber) &&
!objTwoMinusPattern.IsMatch(strNumber) &&
objNumberPattern.IsMatch(strNumber);
}
试过很多还是觉得这个好,全面且速度快,try+catch判断一个还行,上百个就傻了

Regex x = new Regex("^[0-9]*$");
if (x.IsMatch(TextBox1.Text))
{
Response.Write("正确"