日期:2014-05-18  浏览次数:20438 次

限制TextBox输入框的内容
现有一个Textbox,要求里面输入的是数字,即可以输入整数,也可以输入浮点数,数据库中对应的字段为Decimal(12,6),请问这样的正则表达式该如何写?
另外如果编程限定,该如何写代码了?

------解决方案--------------------
(+|-)?\d{1,12}(.\d{1,6})?
------解决方案--------------------
只能输入实数


表达式 ^[-+]?\d+(\.\d+)?$
描述 匹配实数
匹配的例子 18,+3.14,-9.90
不匹配的例子 .6,33s,67-99

------解决方案--------------------
用正则表达式来限制。
给你一段代码吧!
#region 验证输入的值是不是数字的正则表达式
/// <summary>
/// 验证输入的值是不是数字的正则表达式
/// </summary>
/// <param name= "str "> 传入一个字符串 </param>
/// <returns> trur或是false </returns>
public static bool ValidateNumeric(string str)
{
if (!Regex.IsMatch(str, @ "^(-{0,1}|\+{0,1})[0-9]+(\.{0,1}[0-9]+)$ "))
{
throw new Exception( "输入的值不是数字,请重输 ");
}
else
{
return true;
}
}


#endregion

------解决方案--------------------
^\d+(\.\d+)?$
百分百正确
------解决方案--------------------
mark