string str=Text1.text;怎样判断str是否位数字?充分每一张贴,每一分,CSDN精神

解决方案 »

  1.   

    1、正则表达式
        优点:可以验证字符串的格式,比如为正整数、只带2位小数、是否为手机号码等,这是其它方法做不到的,而且需求改变时,只需要修改一下正则表达式就可以了
        缺点:效率不是最高的,需要对正则表达式有一定程度的了解
     
        2、VB.NET IsNumeric方法
        优点:是现成的方法,用起来方便,且参数为object,并不局限于string
        缺点:只能判断所给的参数是否是数值(boolean/byte/int6/int/int6/single/double/decimal),无法作进一步的判断,比如是否为正整数
     
        3、Catch Exception 方法
        相对于其它方法而言,这是最应该避免使用的一种方法,在有Exception抛出的时候,消耗大量系统资源
     
        4、Char.IsNumber 方法
        优点:C#自带的方法,用起来方便,效率高
        缺点:需要自己写方法,同样只能判断是否全为数字,无法作进一步判断
     
        5、比较ASCII码
        优点:效率高
        缺点:需要自己写方法,同样只能判断是否全为数字,无法作进一步判断
      

  2.   

    int.TryParse(Text1.text)
    if(Regex.IsMatch("",@ "^[0-9]+$ "))
    {
    }   
    string str= "";
        foreach (char c in str)
        {
            if (char.IsNumber(c)) Console.WriteLine(c + " 是数字");
        }
      

  3.   


    忘了说明了,是Winform开发
      

  4.   


    忘了说明了,是Winform开发
      

  5.   


            遍历str判断