zoukankan      html  css  js  c++  java
  • c#判断输入textbox是否为数字



    asp.net判断输入文字是否是数字

    方案一:
    /**//// <summary>
    /// 名称:IsNumberic
    /// 功能:判断输入的是否是数字
    /// 参数:string oText:源文本
    /// 返回值: bool true:是 false:否
    /// </summary>
    public bool IsNumberic(string oText)
    {
    try
    {
    int var1=Convert.ToInt32 (oText);
    return true;
    }
    catch
    {
    return false;
    }
    }

    try catch方法
    例:
    try
    {
    Convert.ToInt32("123"):
    Console.Write("是数字");
    }
    catch(Exception ex)
    {
    Console.Write("非数字");
    }
    注:如果有很多字符串要求判断,此方法需要大量的try catch 以及finally来处理后续的程序.不建议使用此方法。

    改进一下:
    因为可以转int 可以转Decimal
    public bool IsNumberic(string oText)
    {
    try
    {
    Decimal Number = Convert.ToDecimal (oText);
    return true;
    }
    catch
    {
    return false;
    }
    }

    方案二:
    //如果是纯数字还可以采用ASCII码进行判断
    /// <summary>
    /// 判断是否是数字
    /// </summary>
    /// <param name="str">字符串</param>
    /// <returns>bool</returns>
    public bool IsNumeric(string str)
    {
    if (str == null || str.Length == 0)
    return false;
    System.Text.ASCIIEncoding ascii = new System.Text.ASCIIEncoding();
    byte[] bytestr = ascii.GetBytes(str);
    foreach (byte c in bytestr)
    {
    if (c < 48 || c > 57)
    {
    return false;
    }
    }
    return true;
    }
    方案三:
    正则表达式方法
    例:
    //引用正则表达式类
    using System.Text.RegularExpressions;
    Regex reg=new Regex("^[0-9]+$");
    Match ma=reg.Match(text);
    if(ma.Success)
    {
    //是数字
    }
    else
    {
    //不是数字
    }
    注:此方法快捷,但不太容易掌握,尤其是正则表达式公式,如果有兴趣的朋友可以好好研究,这东西很好用的,建议使用。
    方案四:
    Double.TryParse方法
    例:
    bool isNum=System.Double.TryParse("所要判断的字符串" ,System.Globalization.NumberStyles.Integer,null,out );
    注:此方法快捷,方便,很容易被掌握,但是参数很多,有兴趣的朋友可以研究一下,建议使用。
    参数不好用
    没有使用过
    方法五:
    新建一个类
    using System;
    using System.Collections.Generic;
    using System.Text.RegularExpressions;
    namespace LBC.Number
    {
    /// <summary>
    /// 数字判断的类
    /// </summary>
    public class NumberClass
    {
    /// <summary>
    /// 判断是否是数字
    /// </summary>
    /// <param name="strNumber">要判断的字符串</param>
    /// <returns></returns>
    public static 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]+___FCKpd___0quot;;
    String strValidIntegerPattern = "^([-]|[0-9])[0-9]*___FCKpd___0quot;;
    Regex objNumberPattern = new Regex("(" + strValidRealPattern + ")|(" + strValidIntegerPattern + ")");
    return !objNotNumberPattern.IsMatch(strNumber) &&
    !objTwoDotPattern.IsMatch(strNumber) &&
    !objTwoMinusPattern.IsMatch(strNumber) &&
    objNumberPattern.IsMatch(strNumber);
    }
    /// <summary>
    /// 判断是否是int类型
    /// </summary>
    /// <param name="Value">要判断的字符串</param>
    /// <returns></returns>
    public static bool IsInt(string Value)
    {
    return Regex.IsMatch(Value, @"^[+-]?d*___FCKpd___0quot;);
    }
    /// <summary>
    /// 判断是否是数字
    /// </summary>
    /// <param name="Value">要判断的字符串</param>
    /// <returns></returns>
    public static bool IsNumeric(string Value)
    {
    return Regex.IsMatch(Value, @"^[+-]?d*[.]?d*___FCKpd___0quot;);
    }
    }
    }

  • 相关阅读:
    【反射】Java反射机制
    Composer教程之常用命令
    Composer教程之基础用法
    Composer教程之初识Composer
    Composer 的结构详解
    现代 PHP 新特性系列(七) —— 内置的 HTTP 服务器
    现代 PHP 新特性系列(一) —— 命名空间
    现代 PHP 新特性系列(二) —— 善用接口
    现代 PHP 新特性系列(三) —— Trait 概览
    现代 PHP 新特性系列(四) —— 生成器的创建和使用
  • 原文地址:https://www.cnblogs.com/dekevin/p/4177722.html
Copyright © 2011-2022 走看看