【发布时间】:2016-03-04 19:59:13
【问题描述】:
试图编写一个 javascript 正则表达式来强制用户在整数后输入小数,似乎很多人都不想这样做,因为我的搜索没有产生任何适合我需要的结果。
Match: 2.00 20.00 200.00 1.73 0.10
No Match: .2 .20 . 1 10 1.0 0.1 1.
这是我目前拥有的:
var regexp=/^[0-9]{1,}\.{1}[0-9]{2}$/;
简而言之,用户必须输入 X.XX 格式的钱。不允许只使用一个整数。
我将不胜感激任何帮助并教授任何人在完成这项工作时必须提供的见解。
编辑:
代码如下:
var notempty=/[a-zA-Z0-9\.\$]/g;
var money=/^[0-9]{1,}\.{1}[0-9]{2}$/;
if ( (notempty.test(document.getElementById('numbers').value)) && (!money.test(document.getElementById('numbers').value)) )
{alert('Wrong format');}
【问题讨论】:
-
/^\d+\.\d{2}$/怎么样? - regexr.com/3cak4 -
@JoshCrozier 请注意,这也将允许
0003.01,这可能不是 OP 想要的。 -
这和我已经拥有的一样,只是写法不同,不,它不起作用。 “1”返回真,尽管“10”不返回。 “1”需要写成“1.00”才能匹配。
-
@Bob 与您的正则表达式“1”对我返回 false。
-
你的方法怎么行不通?举一些例子,因为所有的
No Match项目都不匹配,而所有的Match项目都匹配。
标签: javascript regex decimal currency