3

我正在尝试在 jquery 中创建货币正则表达式。一切正常,除了它包含中间带减号的数字,如“1-3”

我正在使用带有以下正则表达式的匹配函数:

/[\$€£]\d{0,3},?\d{1,3}(.\d{2})?/g

有谁知道为什么要包含减号?

谢谢你的帮助!

4

3 回答 3

6

包含减号是因为您.的正则表达式中间有一个。.表示它可以匹配任何字符。

于 2012-12-23T02:23:05.723 回答
5

转义.,否则它匹配任何字符。在这种情况下,它匹配-.

另请注意,您不需要转义,$因为它在字符类中没有意义[...]

编辑:这是我要使用的:

/^[$£€]\d{1,3}(?:,\d{3})*(?:\.\d{2})?$/
于 2012-12-23T02:23:08.627 回答
0

使用 jquery 插件的 autoNumeric 插件,该插件会在您在表单输入中键入时自动格式化货币和数字 首先 - 在标题中包含 jQuery.js 和 autoNumeric-1.9.19.js javascript 文件。

第二 - 在 HTML/JSP 文档上插入一个表单和输入字段。

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

jQuery(函数($){

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

});

于 2014-03-25T10:39:51.313 回答