日期:2014-05-20  浏览次数:20719 次

求一正则表达式验证 numeric(12,3)
如题

------解决方案--------------------
^-?(?=(?<a>[\d.]{1,13}$))((?:[1~9]\d+)?(?:\d\.\d{1,2})?)$
------解决方案--------------------

C# code


Regex re = new Regex("^(?!0\\d|[0.]+$)\\d{9}(\\.\\d{3})$", RegexOptions.None);

------解决方案--------------------
C# code
Regex reg = new Regex(@"^(?:(?!0\d)|0)\d{0,9}(\.\d{3})?$");

------解决方案--------------------
Regex reg = new Regex(@"^(?:(?!0\d)|0)\d{0,9}(\.\d{3})?$");
蛋疼的csdn,怎么回复不出去。。。
------解决方案--------------------
浮点数的数据结构 整型数据 + 小数点位置
所以numberic(12,3) 应该是有效数据12位 小数点最多3位 还有负数情况
123456789012 也是合法的数据

不过光靠正则好像不能100%匹配