`
snake_hand
  • 浏览: 624749 次
社区版块
存档分类
最新评论

c#判断输入文字是否是数字

 
阅读更多

c#判断输入文字是否是数字

方案一:
/**//// <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 );
注:此方法快捷,方便,很容易被掌握,但是参数很多,有兴趣的朋友可以研究一下,建议使用。
参数不好用
没有使用过

public static bool IsNumberic(string strnum)

{
int i = 0;
bool result = int.TryParse(strnum, out i);
return result;

}


方法五:
新建一个类
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;);
}
}
}

声明:本贴转自 http://www.cnblogs.com/guanjie20/archive/2009/06/18/1505709.html

分享到:
评论

相关推荐

    c#中判断字符串是不是数字或字母的方法

    判断汉字一般是输入 &gt;255 因为汉字是大字符集二、判断输入的是不是数字 代码如下:try{int n = 0;n = int.Parse(this.textBox1.Text.Trim());}catch{MessageBox.Show(“你输入的不是数字~!”);}也可以用Char.is

    C#实现OCR手写数字识别

    7. 图像分类:在识别阶段,将经过预处理的手写数字图像输入到训练好的模型中,模型根据学到的特征对输入图像进行分类,判断其为0-9中的哪一个数字。 8. 应用程序接口(API)设计:在实际项目中,你可能需要设计一个...

    C#实现数字转化大写

    在C#中实现这一功能,可以利用字符串处理、条件判断以及对汉字字符的映射。以下是对这个主题的详细解释: 首先,我们要明白,人民币大写的规则是固定的:个位、十位、百位、千位分别对应一、二、三、四、五、六、七...

    c#输入后自动获取汉字的首字母.txt

    根据提供的文件信息,本文将详细解释如何在C#中实现获取汉字首字母的功能,并解析代码逻辑及其实现原理。 ### 核心知识点 #### 1. 获取汉字首字母的背景与应用场景 在很多中文处理的应用场景中,我们需要将汉字...

    正则表达式限制文本框只能输入数字,小数点,英文字母,汉字[文].pdf

    - 第一个`&lt;input&gt;`使用`isNaN(value)`判断输入值是否为数字,如果不是,则通过`execCommand('undo')`撤销最近一次操作。 - 第二个`&lt;input&gt;`在值改变时检查是否有非数字字符,如果有,则弹出提示并清空输入框。 ####...

    C#控制键盘输入全角半角

    本篇文章将详细探讨如何在C#中控制键盘输入,使得用户在特定情况下输入全角或半角字符。 全角字符和半角字符主要的区别在于它们占用的字节数和显示宽度。全角字符在ASCII编码中通常占用两个字节,而半角字符则占用...

    C#编写数字大小写转换器源代码.zip

    C#中的`string.Concat()`或`+`运算符可以用于此目的。 6. **异常处理**: 为了确保输入的合法性,程序需要处理无效的输入,如非数字字符、负数等情况。使用`try...catch`块可以捕获并处理这些异常。 7. **用户界面...

    c#数字转大写

    在日常开发工作中,经常需要将数字转换成汉字大写形式,尤其在财务、票据等场景下尤为重要。本文将深入探讨如何使用C#语言来实现数字到大写字体的转换,并通过具体代码示例进行详细解释。 #### 1. 背景与应用场景 ...

    C#中将数字金额转化为大写金额

    通过上述步骤,我们可以在C#中有效地将任意合法的数字金额转换为大写金额格式,满足各种财务和票据处理需求。需要注意的是,实际开发中可能还需要考虑更多的边界情况和异常处理,以确保程序的健壮性和准确性。

    C#获取汉字拼音首字母

    其中,`IsChinese`方法用于判断输入字符是否为汉字,通过Unicode编码范围进行识别。 总之,C#中获取汉字拼音首字母涉及到对Unicode编码的理解、拼音映射数据的管理和字符串处理技巧。通过合理的设计和编程,可以...

    数字转汉字大写

    3. **条件判断**:在转换过程中,需要通过条件判断来决定某些数字是否应该用特定的汉字表示,比如“10”不是“壹拾”,而是“壹十”。同时,还需要处理零的特殊性,比如在个位为零时,需要保留“零”字。 4. **异常...

    c# 汉字拼音

    在C#中处理汉字拼音,通常需要借助特定的库或API,例如Google提供的开源库。描述中提到的“源码来源于GOOGLE”,可能指的是Google曾经发布的一个用于处理汉字拼音的开源项目,这个项目可能包含了将汉字转换为拼音,...

    C#判断字符编码的方法总结(六种方法)

    以下是对六种在C#中判断字符编码的方法的详细解析: 1. **方法一:通过Unicode编码判断** 这个方法基于Unicode编码的特性,中文字符在Unicode中的范围是0x4e00到0x9fff。通过`Char.ConvertToUtf32()`函数获取字符...

    判断密码必须包括大小写字母,特殊字符,数字,长度8到16位

    1. **长度检查**:通过 `Len` 函数获取输入字符串的长度,并使用 `If` 语句检查长度是否在8到16位之间。 2. **字符类别检测**: - **特殊字符检测**:使用 `Asc` 函数获取每个字符的ASCII码值,并通过一系列条件...

    C#将汉字转换成全拼的拼音

    通过`GetUnicodeCategory`方法,我们可以判断一个字符是否为汉字,因为汉字的Unicode类别属于"OtherLetter"。 2. **`TextInfo`类和`ToTitleCase`方法**:`TextInfo`类提供了对字符串的大小写转换和区域设置相关的...

    C#验证给定字符串形式日期是否合法的方法

    这个方法提供了一种灵活且全面的方式来验证C#中的日期字符串,能够处理常见格式以及一些非标准的用户输入,确保了程序在处理日期时的健壮性。对于开发涉及日期处理的C#应用程序,这样的函数是非常有用的。

    图形输入验证 C#

    - NoCAPTCHA:Google提供的NoCAPTCHA reCAPTCHA服务,通过后台算法判断用户是否为人类,减少了用户输入验证码的步骤。 - 动态验证码:每次请求时生成不同的验证逻辑,如拖动滑块,增加安全性。 总之,C#中实现...

    文本框输入指定类型的数据

    在设计用户界面时,我们经常需要限制用户输入特定类型的数据,比如数字、字母、汉字或是特定格式的数据,如身份证号。这有助于确保数据的准确性和一致性,避免因用户输入不合法数据导致的问题。 在标题“文本框输入...

    C#中数字转变成大写的类

    本文详细介绍了如何在C#中实现数字转换为汉字大写的方法。通过上述步骤,我们可以轻松地将财务系统中的数值转换为标准的汉字大写形式,满足财务报告的需求。这种方法不仅提高了数据的可读性和专业性,同时也简化了...

Global site tag (gtag.js) - Google Analytics