首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

求匹配正整数,正浮点数正则表达式解决办法

2012-02-09 
求匹配正整数,正浮点数正则表达式如題:[解决办法]^[1-9][0-9]*$    //匹配正整数^(?:[1-9][0-9]*\.[0-9]+|

求匹配正整数,正浮点数正则表达式
如題:

[解决办法]
^[1-9][0-9]*$    //匹配正整数
^(?:[1-9][0-9]*\.[0-9]+|0\.(?!0+$)[0-9]+)$   //匹配正浮点数

[解决办法]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
※以下是引用9楼 lxcnn(过客) 在2007-06-27 09:08:43 的发言:
──────────────────────────────────────────
-_-#,能不能一次把要求说完,0.0也在正整数和正浮点数范围内吗,我孤陋寡闻
^(?:[1-9][0-9]*(?:\.[0-9]+)?|0\.[0-9]+)$
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
^(?:[1-9][0-9]*(?:\.[0-9]+)?|0\.[0-9]+)$
等价于
^[1-9][0-9]*(?:\.[0-9]+)?|0\.[0-9]+$

还有
^(?:[1-9][0-9]*(?:\.[0-9]+)?|0\.[0-9]+)$
匹配不了0

稍做修改
^(?:[1-9]\d*|0)(?:\.\d+)?$
[解决办法]
#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;
}
}
完整写法,包括负数都可以,自己修改一下吧。

热点排行