正则表达式对我来说一直像是黑魔法,我从来没有想过如何构建它们。 我现在需要一个 Reg Exp(用于验证 putsposes)来检查用户是否根据以下规则输入了数字。
- 没有字母
- 可以有小数
- 可以用逗号表示千位,但必须正确放置逗号
一些有效值的例子:
1.23
100
1,234
1234
1,234.56
0.56
1,234,567.89
无效值:
1.ab
1,2345.67
0,123.45
1.24,687
请您参考如下方法:
你可以试试下面的表达式
^([1-9]\d{0,2}(,\d{3})+|[1-9]\d*|0)(\.\d+)?$
解释:
- 点之前的部分包括
- 1-3 位数字后跟(一个或多个)逗号加三位数字
- 或只是数字(至少一个)
- 如果 then 跟在一个点之后,还必须跟一些数字。
