日期:2014-05-16  浏览次数:20375 次

求一个正则,简单望指教
要求是:能输入数字,可以是小数,但是要排除整十,整百,整千,整万的情况,比如10052,142.35,654200都是对的,10,2000, 50000这些就不行.
正则

------解决方案--------------------
上面的发错了。。重新发一遍。。

var r=/^(\d
------解决方案--------------------
[1-9]\d*?[1-9]+0*)(\.\d+){0,1}$/;
alert(r.test('10052'))
//r.test('142.35')
//r.test....

后面的我都测试过了,你可以自己试一遍。。
这个是javascript代码,换成别的语言正则也类似这样写
------解决方案--------------------

function asd(m)
{
return /^[1-9]\d+(\.\d+)?$/.test(m) && !/^[1-9]0+$/.test(m);
}
alert(asd("10000"));
alert(asd("100n00"));
alert(asd("10000.655"));
alert(asd("10005"));
alert(asd("10030"));