C#验证输入的是否数字的几种方法

互联网 | 编辑: uker编辑2 2007-04-03 00:00:00转载

方法一: static bool IsNumeric(string str) {

    方法一:

static bool IsNumeric(string str)
  {
   if (str==null || str.Length==0)
    return false;
   foreach(char c in str)
   {
    if (!Char.IsNumber(c))
    {
     return false;
    }
   }
   return true;
  }

    方法二:

private bool IsNumeric(string s)

private bool IsNumeric(string s)

         {

              char ch0 = '0';

              char ch9 = '9';

              for(int i=0; i < s.Length; i++)

              {

                  if ((s[i] < ch0 || s[i] > ch9))

                   {

                         this.lblwarning.Text="此处应输入整数且非负!";

                         return false;

                   }

              }

              return true;

         }

    方法三:

static bool IsNumeric (string str)
{  
   System.Text.RegularExpressions.Regex reg1 
       = new System.Text.RegularExpressions.Regex(@"^[-]?\d+[.]?\d*$"); 
   return reg1.IsMatch(str);
}

    方法四:(可扩展)

public static bool IsConvert(string Expression,Type DataType)

{

  switch(DataType.Name)

  {

       case "Double":

              try

              {

                     Double.Parse(Expression);

                     return true;

              }

              catch

              {

                     return false;

              }

       case "DateTime":

              try

              {

                     DateTime.Parse(Expression);

                     return true;

              }

              catch

              {

                     return false;

              }

       default:

              return true;

  }

}

    C#验证输入的是否数字的方法

其实用正则表达式也可以
static bool IsNumeric(string str)
  {
   if (str==null || str.Length==0)
    return false;
   foreach(char c in str)
   {
    if (!Char.IsNumber(c))
    {
     return false;
    }
   }
   return true;
  }

正则表达的写法是:


static bool IsNumeric(string str) 
{  
   System.Text.RegularExpressions.Regex reg1 
       = new System.Text.RegularExpressions.Regex(@"^[-]?\d+[.]?\d*$");  
   return reg1.IsMatch(str); 
}

如果想了解更多相关信息以及详细咨询,欢迎点击中英网http://www.uker.net/,或发email至:echo@uker.net,UKer.net资深编辑将为您详细解答。

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑