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

关于负数的正则表达式问题----------
问一个关于正则表达式的问题
一个文本框怎么控制输入为:正数或是负数.
不能为小数或是其它的字符.

------解决方案--------------------
/^\-?\d+$/
------解决方案--------------------
var erg = /^(-)?[1-9]*\d+$/;

------解决方案--------------------
var erg = /^(-)?[1-9]+\d*$/;
------解决方案--------------------
- -
晕倒,不带-0的话

/^(?:\-?[1-9]\d*|0)$/;
------解决方案--------------------
<HTML>
<BODY>
<script>
function test()
{
var str=document.form1.name1.value;
var re=/^(-?[1-9]\d*|0)$/;
if (re.test(str))
{
alert( "ok ")
}
else alert( "no ")
}
</script>
<form name=form1>
<input name= "name1 " type=text onblur= "test() ">
</form>
</BODY>
</HTML>

------解决方案--------------------
想要0开头的正数的话。。

/^(?:\-[1-9]\d*|\d+)$/;

验证的时候

<input onblur= "if (!/^(?:\-[1-9]\d*|\d+)$/.test(this.value)) alert(false) " />