我想要一个仅占用数字的工资字段,以及点后最多2位的数字。不允许使用空格和逗号。
以下我的RegEx无效,它允许使用空格和逗号,逗号后面允许超过2位数
("^[+-]?[0-9]{1,3}(?:[0-9]*(?:[.'][0-9]{2})?|(?:'[0-9]{3})*(?:\.[0-9]{2})?|(?:\.[0-9]{3})*(?:'[0-9]{2})?)$");
以下是应该接受的内容
10000
10000.00
不应接受以下内容
10,000
10'000
10000.456
1000.47888
10 000
答案 0 :(得分:0)
这已在这里得到解答: Regex currency validation 解决方案适用于JavaScript,但通常可以在每种语言中使用正则表达式
答案 1 :(得分:0)
尝试以下方法:
^\d+(?:\.\d{1,2}){0,1}$
说明:
\d+
- 一个或多个数字
(?:\.\d{1,2}){0,1}
- 可选(发生一次或根本不发生)点后跟一位或两位数
答案 2 :(得分:0)