货币正则表达式与小数

时间:2012-07-13 11:52:32

标签: javascript regex currency

我需要帮助:我想在javascript中验证我的货币输入格式:

1 234,78(因此可能存在1000到2位小数之间的空格)。

示例:

50,25
50
1 150
1 150,44
1 000 001
1 000 001,25

你能帮助我吗?

Thanks2

4 个答案:

答案 0 :(得分:2)

^(\+|-)?(0|[1-9][0-9]{0,2}( [0-9]{3,3})*)(,[0-9]{1,2})?$

答案 1 :(得分:1)

经过测试,它将会起作用

例如:9 999 999 999,99

$('#amount')。change(function(){

$('tr:last')。find(“td:last”)。text(messages ['amount invalid'])。hide();

var inputVal = $(this).val();   

var patternMontant = /^\$?(([0-9]{0,10}))?\,[0-9]{2}$/;

if(!patternMontant.test(inputVal)) {

$('tr:last')。find(“td:last”)。text(messages ['amount invalid'])。show()。css(“color”,“red”);

 $(this).val('');   

}

});

答案 2 :(得分:0)

我觉得像 - >

re.match(r"[0-9]{0,2}(\s[0-9]{3})*", str)

应该有用。

答案 3 :(得分:0)

使用jquery的autoNumeric插件非常好用且简单。  在表单输入上键入时自动格式化货币和数字的插件

首先 - 在标题中包含jQuery.js和autoNumeric-1.9.19.js javascript文件:

 

第二 - 在HTML / JSP文档中插入表单和输入字段:

     

第三 - 在单独的脚本中初始化autoNumeric $('selector')。autoNumeric('init'):

jQuery(function($){

  $('#someID_defaults').autoNumeric('init', {aSign:',', pSign:'£', vMax:'99999.99' }); 

});