我有这段代码来测试INPUT
中输入的值是否为数字:
$("#price").val().match(/^\d+$/);
我需要一些帮助重写此函数以允许使用冒号或点的小数位,这意味着例如允许230.00
并且230,00
是也允许。小数位也可以是4或更小。任何?
答案 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个数字。或者,