C#怎么判断输入内容是不是为数字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#怎么判断输入内容是不是为数字相关的知识,希望对你有一定的参考价值。

方案一:Try...Catch(执行效率不高)
///
/// 名称:IsNumberic
/// 功能:判断输入的是否是数字
/// 参数:string oText:源文本
/// 返回值: bool true:是 false:否
///
///
///
private bool IsNumberic(string oText)

try

int var1=Convert.ToInt32 (oText);
return true;

catch

return false;



方案二:正则表达式(推荐)
a)
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);


b)
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*$");
参考技术A 判断是不是数据,要不是就表示没有选择,则从隐藏域里读出来

用js怎么判断输入一个必须是数字?包括负数和整数

用js怎么判断输入一个必须是数字?包括负数和整数和小数点可以提供详细代码吗?送50分啊

可以用正值表达式哦~~JS判断是否为数字,是否为整数,是否为浮点数 正则表达式方法function checkRate(input)

var re = /^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 //判断正整数 /^[1-9]+[0-9]*]*$/
if (!re.test(input.rate.value))

alert("请输入数字(例:0.02)");
input.rate.focus();
return false;

下面为普通函数写法function BASEisNotNum(theNum)

//判断是否为数字
if (BASEtrim(theNum)=="")
return true;
for(var i=0;i<theNum.length;i++)
oneNum=theNum.substring(i,i+1);
if (oneNum<"0" || oneNum>"9")
return true;

return false;
function BASEisNotInt(theInt)

//判断是否为整数
theInt=BASEtrim(theInt);
if ((theInt.length>1 && theInt.substring(0,1)=="0") || BASEisNotNum(theInt))
return true;

return false;
function BASEisNotFloat(theFloat)

//判断是否为浮点数
len=theFloat.length;
dotNum=0;
if (len==0)
return true;
for(var i=0;i<len;i++)
oneNum=theFloat.substring(i,i+1);
if (oneNum==".")
dotNum++;
if ( ((oneNum<"0" || oneNum>"9") && oneNum!=".") || dotNum>1)
return true;

if (len>1 && theFloat.substring(0,1)=="0")
if (theFloat.substring(1,2)!=".")
return true;

return false;
参考技术A <html>
<head>
</head><body><script>
function f_check_float(obj)

if (/^(\+|-)?\d+($|\.\d+$)/.test( obj.value ))

return true;

else

alert("请输入实数");
return false;

</script>
<form>
<input name="vvv">
<input type="button" onClick="javascript:f_check_float(vvv)"/>
</form>
</body>
</html>

以上是关于C#怎么判断输入内容是不是为数字的主要内容,如果未能解决你的问题,请参考以下文章

C#中如何判断输入的文本为纯数字

C#中如何限制Textbox控件中只能输入数字,要能用退格的

c#中如何判断文本框中是不是是数字(包括小数)

c#中的文本框里怎么判断输入的内容是啥类型

C#怎么才能输入3个数字加个逗号

用js怎么判断输入一个必须是数字?包括负数和整数