就一个JS正则表达式

shangezi 2009-07-01 09:40:04
是验证金额的,要求是只能是整数或者小数,而且小数只能是2位,不能有负数,小数点前面的0只能保留一个,不能像这样 00.1,

也不能有2个小数点,谢谢各位帮忙了
...全文
42 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
wang_d_q 2010-01-17
  • 打赏
  • 举报
回复
var myReg=/^[0-9]+(.[0-9]{1,2})?$/;
试试这个吧
shangezi 2009-07-01
  • 打赏
  • 举报
回复
谢谢大家帮忙,现在暂时用了 zisheng 的,觉得还行,要给分了
monexus 2009-07-01
  • 打赏
  • 举报
回复
/^(?:0|0[1-9]+|[1-9]\d*)(?:.\d{1,2})?$/
程序猿之殇 2009-07-01
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 ZiSheng 的回复:]
一样?
改成?能匹配三位数吗?
[/Quote]
晕倒,
应该是*
ZiSheng 2009-07-01
  • 打赏
  • 举报
回复
在这里,应该是+和*效果一样因为前边有
[1-9]
ZiSheng 2009-07-01
  • 打赏
  • 举报
回复
一样?
改成?能匹配三位数吗?
程序猿之殇 2009-07-01
  • 打赏
  • 举报
回复
?和*都是一样的效果
字符*
意义:匹配*前面的字符0次或n次。
例如:/bo*/匹配"A ghost booooed"中的’boooo’或"A bird warbled"中的’b’,但不匹配"Agoat g
runted"中的任何字符。

字符+
意义:匹配+号前面的字符1次或n次。等价于{1,}。
例如:/a+/匹配"candy"中的’a’和"caaaaaaandy."中的所有’a’。

字符?
意义:匹配?前面的字符0次或1次。
例如:/e?le?/匹配"angel"中的’el’和"angle."中的’le’。
  • 打赏
  • 举报
回复
var reg=/^(0|[1-9]\d*)(\.\d{2})?$/;
alert(reg.test("11"));
ZiSheng 2009-07-01
  • 打赏
  • 举报
回复
稍微简化下:
var reg = /^([1-9]\d*|0)(\.\d{0,2})?$/;
ZiSheng 2009-07-01
  • 打赏
  • 举报
回复
应该是*吧
ZiSheng 2009-07-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jakey9826 的回复:]
JScript codevar reg = /^([1-9][0-9]+|0)(\.[0-9]{0,2})?$/;
alert(reg.test(xxx));
[/Quote]
var reg = /^([1-9][0-9]*|0)(\.[0-9]{0,2})?$/;
程序猿之殇 2009-07-01
  • 打赏
  • 举报
回复
var reg = /^([1-9][0-9]?|0)(\.[0-9]{0,2})?$/gi;
加+号改成?号就可以了.
shangezi 2009-07-01
  • 打赏
  • 举报
回复
楼上的这位大哥,我输入整数不行啊??
程序猿之殇 2009-07-01
  • 打赏
  • 举报
回复
var reg = /^([1-9][0-9]+|0)(\.[0-9]{0,2})?$/;
alert(reg.test(xxx));
shenzhenNBA 2009-07-01
  • 打赏
  • 举报
回复
有难度,关注...

87,919

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧