我有正则表达式表达式,允许用户输入decimal or without decimal
的金额。当数量为comma(,)
时,我面临问题。我希望允许comma(,)
金额。
这是我的正则表达式
var regexp = new RegExp("^\\$?(?=.*[1-9])(?:[1-9]\\d*\\.?|0?\\.)\\d*$")
以上表达式使用以下数量
123
1.232
112.2
$12.0
$0.1
以下
失败$42,529.41
$4,529.41
如何允许逗号数量?金额必须大于零。
答案 0 :(得分:1)
使用模式允许整数部分使用逗号并使其重复零次或多次。添加否定前瞻,以便不与0
或0.0
,00
等匹配
var regexp = /^\$?(?!0+(?:\.0+)?$)\d+(?:,\d+)*(?:\.\d+)?$/m;
OR
^(?=.*?[1-9])\$?\d+(?:,\d+)*(?:\.\d+)?$
答案 1 :(得分:1)