[英]Currency regex in Angular
我需要 Angular 中货币正则表达式的帮助。 我不太擅长正则表达式。
我想要的是一个正则表达式:
这是我的正则表达式:
(?=.*?\d)^\$?(([1-9]\d{0,2}(,\d{3})*)|\d+)?(\.\d{1,2})?$
但是这个正则表达式允许 0.00
任何人在这里请帮助谢谢
期望的输出
有效的:
1,000.00
1000
0.01
24
1,234,000
11,222,245.22
无效:
,000.00
,,,,,9
0
0.00
1,22,2,
1,000。
123,123,22
000,300.00
000300.00
000,123
000,000
00,000
0,000
您可以使用
/^(?![0,.]+$)(?:0|[1-9]\d{0,2}(?:,\d{3})*|[1-9]\d*)(?:\.\d{1,2})?$/
查看正则表达式演示
细节
^
- 字符串的开头(?.[0,,]+$)
- 如果存在一个或多个0
,
或 ,则匹配失败的负前瞻.
字符直到字符串结尾(?:0|[1-9]\d{0,2}(?:,\d{3})*|[1-9]\d*
- 三种选择之一:
0
- 零|
或者[1-9]\d{0,2}(?:,\d{3})*
- 1 到 3 位数字,第一个非零,然后是 0 次或多次逗号重复,然后是 3 位数字|
- 或者[1-9]\d*
- 1+ 个数字,第一个非零,(?:\.\d{1,2})?
- 的可选序列.
然后是 1 或 2 位数字$
- 字符串结束。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.