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;
  }

    方法二:

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); 
}

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值