寻求一个javascript的正则表达式 寻求一个javascript正则表达式,要求只能输入正整数,包括可以输入0我发现用/^(\d)+$/;似乎不行如果用这个,可以输入001,002,03,04这类数字,我想这些应该不算正整数吧请求帮助 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 /^(?!0)\d*$/ OR /^[^0]\d*$/ 你干嘛非要在匹配模式中添加一个与“0”呢?我仔细琢磨了下,你可能直接对数值而不是字符串正行test测试。如果这样,JS内部机制会先把诸如01的数值转化为1,当然alert(/^(?!0\d+)\d+$/.test(01))会为true。详情如下:<script>alert(/^(?!0\d+)\d+$/.test("0")); // truealert(/^(?!0\d+)\d+$/.test("01")); //falsealert(/^(?!0\d+)\d+$/.test("1010"));// truealert(01); //1alert(/^(?!0\d+)\d+$/.test(01));// true</script>正则匹配的数据类型是字符串而非数值,通过输入框取得的value也应该是字符串的。哈哈哈。 回 10楼:我只想说我的是经过测试了的 没有问题的 包括对字符串匹配,要否定别人,请先动手实践了再说还有其实对与楼主说提到的 001,04,012这类数字,其实也按常理来讲还是符合要求的,只需要LZ在操作输入的字符串的时候进行一定的处理就是了,如:调用Number("01")//返回1或调用parseInt("012",10)//12这样就可以满足LZ的需要 jquery根据radio类型元素的name和value进行选择,value是变量该怎么办? utf-8:“%E7%BE%8E%E4%B8%BD”,转换成 汉字 js实现 函数返回值问题 js创建html元素 怎么样用js把字符串编码? 如何让页面横向滚动条自动移在最右边 HTML编程基础 : 关于 HTML标签中的 id 与 name. (抛砖贴) Applet与Java Script的通信问题(100分給你了...) 帮忙啊,内容见下 具体看一下代码,没有任何效果。不知问题在哪。求高手帮忙 谁帮我简洁下代码呀 一个感觉有点儿莫名其妙的Javascript运行结果
你干嘛非要在匹配模式中添加一个与“0”呢?我仔细琢磨了下,你可能直接对数值而不是字符串正行test测试。如果这样,JS内部机制会先把诸如01的数值转化为1,当然alert(/^(?!0\d+)\d+$/.test(01))会为true。
详情如下:
<script>
alert(/^(?!0\d+)\d+$/.test("0")); // true
alert(/^(?!0\d+)\d+$/.test("01")); //false
alert(/^(?!0\d+)\d+$/.test("1010"));// truealert(01); //1
alert(/^(?!0\d+)\d+$/.test(01));// true
</script>正则匹配的数据类型是字符串而非数值,通过输入框取得的value也应该是字符串的。哈哈哈。
调用Number("01")//返回1
或调用parseInt("012",10)//12
这样就可以满足LZ的需要