asp.net如何判断是否是数字
如题,如何用asp.net判断他是否为数字.stringid=Request.QueryString["Id"];如何判断ID是否为数字?????...
如题,如何用asp.net判断他是否为数字. string id=Request.QueryString["Id"]; 如何判断ID是否为数字?????
展开
13个回答
展开全部
在后台的判断方法:
//要使用正则必须using
using System.Text.RegularExpressions;
------------------------
Regex r=new Regex(@^\d+(\.)?\d*$);
if(r.IsMatch(this.TextBox1.Text))
{
是数字;
}
else
{
不是数字;
}
以上未实验,不知是否正确。
在前台脚本判断:(建议采用前台方法,已试验)
function isNum(str)
{
var r=/^[0-9]*$/; //
var matchArray=str.match(r);
if (matchArray==null)
{
alert("不是数字");
}
}
你可以参考下:
应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"
//要使用正则必须using
using System.Text.RegularExpressions;
------------------------
Regex r=new Regex(@^\d+(\.)?\d*$);
if(r.IsMatch(this.TextBox1.Text))
{
是数字;
}
else
{
不是数字;
}
以上未实验,不知是否正确。
在前台脚本判断:(建议采用前台方法,已试验)
function isNum(str)
{
var r=/^[0-9]*$/; //
var matchArray=str.match(r);
if (matchArray==null)
{
alert("不是数字");
}
}
你可以参考下:
应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很多朋友在开发过程中都会遇到把一个大大的字符串中分成若干个小的字符串,然后判断小字符串是否是由字字组成。在这里我给大家提供几个简单的方法。
第一种:
try catch方法
例:
try
{
Convert.ToInt32("123"):
Console.Write("是数字");
}
catch(Exception ex)
{
Console.Write("非数字");
}
注:如果有很多字符串要求判断,此方法需要大量的try catch 以及finally来处理后续的程序.不建议使用此方法。
第二种:
正则表达式方法
例:
//引用正则表达式类
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 );
注:此方法快捷,方便,很容易被掌握,但是参数很多,有兴趣的朋友可以研究一下,建议使用。
总结:以上提示希望能给大家一定的帮助。
第一种:
try catch方法
例:
try
{
Convert.ToInt32("123"):
Console.Write("是数字");
}
catch(Exception ex)
{
Console.Write("非数字");
}
注:如果有很多字符串要求判断,此方法需要大量的try catch 以及finally来处理后续的程序.不建议使用此方法。
第二种:
正则表达式方法
例:
//引用正则表达式类
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 );
注:此方法快捷,方便,很容易被掌握,但是参数很多,有兴趣的朋友可以研究一下,建议使用。
总结:以上提示希望能给大家一定的帮助。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
protected void txtQty_TextChanged(object sender, EventArgs e)
{
checkForm();
}
//检验文本信息是否合法,如果合法则开始计算
protected void checkForm()
{
try
{
if (!IsNumberic(txtQty.Text) && txtQty.Text != "")
{
checkbool = false;
Response.Write("<script>alert('数量只能为数字,请输入数字信息,谢谢合作!')</script>");
txtQty.Text = "";
txtQty.Focus();
}
else if (txtQty.Text != "")
{
Qty = int.Parse(txtQty.Text);
}
if (!IsNumberic(txtVat.Text) && txtVat.Text != "")
{
Response.Write("<script>alert('税额只能是数字,请输入数字信息,谢谢合作!')</script>");
checkbool = false;
txtVat.Text = "";
txtVat.Focus();
}
else if (txtVat.Text != "")
{
Vat = Double.Parse(txtVat.Text);
}
if (!IsNumberic(txtUnitPrice.Text) && txtUnitPrice.Text != "")
{
Response.Write("<script>alert('价格只能是数字,请输入数字信息,谢谢合作!')</script>");
checkbool = false;
txtUnitPrice.Text = "";
txtUnitPrice.Focus();
}
else if (txtUnitPrice.Text != "")
{
UnitPrice = Double.Parse(txtUnitPrice.Text);
}
if (checkbool == true)
{
if (Vat != 0 && ExVatAmount != 0)
{
AmountVat = ExVatAmount / (1 - Vat / 100);
txtAmountVat.Text = AmountVat.ToString();
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
/// <summary>
/// 名称:IsNumberic
/// 功能:判断输入的是否是数字
/// 参数:string oText:源文本
/// 返回值: bool true:是 false:否
/// </summary>
public bool IsNumberic(string oText)
{
try
{
//从字符串到双精度值的转换,字符串转换为Double,如果成功则返回为真,否则返回为假。
Double var1 = Convert.ToDouble(oText);
return true;
}
catch
{
return false;
}
}
}
{
checkForm();
}
//检验文本信息是否合法,如果合法则开始计算
protected void checkForm()
{
try
{
if (!IsNumberic(txtQty.Text) && txtQty.Text != "")
{
checkbool = false;
Response.Write("<script>alert('数量只能为数字,请输入数字信息,谢谢合作!')</script>");
txtQty.Text = "";
txtQty.Focus();
}
else if (txtQty.Text != "")
{
Qty = int.Parse(txtQty.Text);
}
if (!IsNumberic(txtVat.Text) && txtVat.Text != "")
{
Response.Write("<script>alert('税额只能是数字,请输入数字信息,谢谢合作!')</script>");
checkbool = false;
txtVat.Text = "";
txtVat.Focus();
}
else if (txtVat.Text != "")
{
Vat = Double.Parse(txtVat.Text);
}
if (!IsNumberic(txtUnitPrice.Text) && txtUnitPrice.Text != "")
{
Response.Write("<script>alert('价格只能是数字,请输入数字信息,谢谢合作!')</script>");
checkbool = false;
txtUnitPrice.Text = "";
txtUnitPrice.Focus();
}
else if (txtUnitPrice.Text != "")
{
UnitPrice = Double.Parse(txtUnitPrice.Text);
}
if (checkbool == true)
{
if (Vat != 0 && ExVatAmount != 0)
{
AmountVat = ExVatAmount / (1 - Vat / 100);
txtAmountVat.Text = AmountVat.ToString();
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
/// <summary>
/// 名称:IsNumberic
/// 功能:判断输入的是否是数字
/// 参数:string oText:源文本
/// 返回值: bool true:是 false:否
/// </summary>
public bool IsNumberic(string oText)
{
try
{
//从字符串到双精度值的转换,字符串转换为Double,如果成功则返回为真,否则返回为假。
Double var1 = Convert.ToDouble(oText);
return true;
}
catch
{
return false;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在后台的判断方法:
//要使用正则必须using
using System.Text.RegularExpressions;
------------------------
Regex r=new Regex(@^\d+(\.)?\d*$);
if(r.IsMatch(this.TextBox1.Text))
{
是数字;
}
else
{
不是数字;
}
以上未实验,不知是否正确。
在前台脚本判断:(建议采用前台方法,已试验)
function isNum(str)
{
var r=/^[0-9]*$/; //
var matchArray=str.match(r);
if (matchArray==null)
{
alert("不是数字");
}
}
你可以参考下:
应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"
//要使用正则必须using
using System.Text.RegularExpressions;
------------------------
Regex r=new Regex(@^\d+(\.)?\d*$);
if(r.IsMatch(this.TextBox1.Text))
{
是数字;
}
else
{
不是数字;
}
以上未实验,不知是否正确。
在前台脚本判断:(建议采用前台方法,已试验)
function isNum(str)
{
var r=/^[0-9]*$/; //
var matchArray=str.match(r);
if (matchArray==null)
{
alert("不是数字");
}
}
你可以参考下:
应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在后台的判断方法:
//要使用正则必须using
using System.Text.RegularExpressions;
------------------------
Regex r=new Regex(@^\d+(\.)?\d*$);
if(r.IsMatch(this.TextBox1.Text))
{
是数字;
}
else
{
不是数字;
}
以上未实验,不知是否正确。
在前台脚本判断:(建议采用前台方法,已试验)
function isNum(str)
{
var r=/^[0-9]*$/; //
var matchArray=str.match(r);
if (matchArray==null)
{
alert("不是数字");
}
}
你可以参考下:
应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))
//要使用正则必须using
using System.Text.RegularExpressions;
------------------------
Regex r=new Regex(@^\d+(\.)?\d*$);
if(r.IsMatch(this.TextBox1.Text))
{
是数字;
}
else
{
不是数字;
}
以上未实验,不知是否正确。
在前台脚本判断:(建议采用前台方法,已试验)
function isNum(str)
{
var r=/^[0-9]*$/; //
var matchArray=str.match(r);
if (matchArray==null)
{
alert("不是数字");
}
}
你可以参考下:
应用:利用正则表达式限制网页表单里的文本框输入内容
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste= "clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询