与小数位匹配的正则表达式

时间:2013-08-27 21:01:26

标签: javascript jquery

我有这段代码来测试INPUT中输入的值是否为数字:

$("#price").val().match(/^\d+$/);

我需要一些帮助重写此函数以允许使用冒号的小数位,这意味着例如允许230.00并且230,00是也允许。小数位也可以是4或更小。任何?

2 个答案:

答案 0 :(得分:1)

正则表达式:$("#price").val().match(/^\d+([,\.]\d{1,4})?$/);

具有负值的正则表达式n2:$("#price").val().match(/^-?\d+([,\.]\d{1,4})?$/);

如果您需要帮助解析与特定文化相关的值,请在此https://github.com/jquery/globalize处获取战利品。这是一个关于全球化和本地化的图书馆。

希望它有所帮助!

答案 1 :(得分:0)

$("#price").val().match(/^\d+((\.|,)\d+)?$/);
但是,上面不会将小数位数限制为四位。

顺便说一下,这是逗号而不是“冒号”

要匹配最多4位的小数位,请使用此

$("#price").val().match(/^\d+((\.|,)\d{1,4})?$/);

之后应该匹配1到4个数字。或者,