zoukankan      html  css  js  c++  java
  • C#判断一个string是否为数字

    案一:Try...Catch(执行效率不高)
    private bool IsNumberic(string oText)
    {
              try
             {
                      int var1=Convert.ToInt32 (oText);
                      return true;
             }
              catch
             {
                      return false;
             }
    }
    
     
    
    方案二:正则表达式(推荐)
    using System.Text.RegularExpressions; a) public static bool IsNumeric(string value) { return Regex.IsMatch(value, @"^[+-]?d*[.]?d*$"); } public static bool IsInt(string value) { return Regex.IsMatch(value, @"^[+-]?d*$"); } public static bool IsUnsign(string value) { return Regex.IsMatch(value, @"^d*[.]?d*$"); } public static bool isTel(string strInput) { return Regex.IsMatch(strInput, @"d{3}-d{8}|d{4}-d{7}"); } b) using System; using System.Text.RegularExpressions; public bool IsNumber(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); } 方案三:遍历 a) public bool isnumeric(string str) { char[] ch=new char[str.Length]; ch=str.ToCharArray(); for(int i=0;i { if(ch[i]<48 || ch[i]>57) return false; } return true; } b) public bool IsInteger(string strIn) { bool bolResult=true; if(strIn=="") { bolResult=false; } else { foreach(char Char in strIn) { if(char.IsNumber(Char)) continue; else { bolResult=false; break; } } } return bolResult; } c) public static bool isNumeric(string inString) { inString=inString.Trim(); bool haveNumber=false; bool haveDot=false; for(int i=0;i { if (Char.IsNumber(inString[i])) { haveNumber=true; } else if(inString[i]=='.') { if (haveDot) { return false; } else { haveDot=true; } } else if(i==0) { if(inString[i]!='+'&&inString[i]!='-') { return false; } } else { return false; } if(i>20) { return false; } } return haveNumber; }
  • 相关阅读:
    react使用react-hot-loader实现局部热更新
    React的环境搭建以及脚手架的安装
    Git常用命令及方法大全
    centos7.6
    Spring Boot 如何提升服务吞吐量?
    RabbitMQ 的核心概念,看了必懂!
    Jenkins 自动化部署 Java 项目,厉害~
    Spring Boot 太狠了,一口气发布了 3 个版本!
    牛逼哄哄的 RabbitMQ 到底有啥用?
    为什么 HTTPS 是安全的?图文详解!
  • 原文地址:https://www.cnblogs.com/jiangyunfeng/p/11787144.html
Copyright © 2011-2022 走看看