求高人指点一个金额的正则表达式,谢谢了!/^(\d+|[1-9])\.?\d{0,2}$/ 10

用这个验证金额,仍然可以输入00000(多个零)或者0.(一个零一个点),请问我应该怎么改一下,才能更加严密?非常感谢。我刚刚好像没有表述清楚,我希望只能验证这种情况的数... 用这个验证金额,仍然可以输入00000(多个零)或者0.(一个零一个点),请问我应该怎么改一下,才能更加严密?非常感谢。
我刚刚好像没有表述清楚,我希望只能验证这种情况的数:必须是正数,且小数点后最多两位。/^(\d+|[1-9])\.?\d{0,2}$/不太严密,我希望再严密一点,非常感谢大家。
最后,谢谢各位在第一时间给我的帮助。受各位的启发,我自己把这个正则表达式写好了。/^(\b[1-9]+\d*(\.\d{1,2})?\b)|(\b0\.[1-9]\d{0,1}\b)|(\b0\.0[1-9]\b)$/ 是匹配金额的,小数点前面任意位数,如果有小数点,小数点后保留两位。
谢谢大家的热情帮助!
展开
 我来答
百度网友6ca0ba3
2011-09-08 · TA获得超过1489个赞
知道小有建树答主
回答量:360
采纳率:0%
帮助的人:573万
展开全部
^(([1-9]|[1-9]\d+)\.([0-9][1-9]|[1-9])|0\.([0-9][1-9]|[1-9])|[1-9]\d+|[0-9])$

正则判断长度,位数什么的都很麻烦,因为正则是判断字符串的。
必须穷举所有可能的情况……
难免漏掉一两个

这个是我写的,谁还有什么好写法我也想学习一下。。。。
还有问题hi我。
改洋0jH7b9
2011-09-08
知道答主
回答量:16
采纳率:0%
帮助的人:12.1万
展开全部
/^[1-9]\d*\.?\d{1,2}$|^0+$|^0\.\d{0,2}$/
可以输入00000(多个零)或者0.(一个零一个点)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
计名pS
2011-09-08 · TA获得超过3649个赞
知道大有可为答主
回答量:4189
采纳率:0%
帮助的人:2182万
展开全部
/^(?!0+\.?0*$)(?:0\.\d{2}|[1-9]\d*(?:\.\d{2})?)$/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a67729519
2011-09-08 · TA获得超过893个赞
知道小有建树答主
回答量:1290
采纳率:0%
帮助的人:801万
展开全部
更加严密是啥意思?我怎么觉得00000就已经莫名其妙了呢?
/^\d+\.?d{0.3}$/
这样?
我觉的你的意思是不是“更加宽松”~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式