我需要一个正则表达式,只允许数字(0-9(,单逗号(,(和多个点(.(。
示例:10.000.100,00--有效 10,000,100.00--无效
我试过了
- ^[\d.,]+$
- \d+,?.*
但是它们都不起作用。 它们都允许多个逗号。
需要有关 Java 中此正则表达式的帮助。
您可以使用此表达式:-^d+[d.]*,?[d.]*d*$
它将允许以数字开头和结尾。 多个 (.( 点和一个 (,( 逗号
友情链接 :- https://regex101.com/r/hSjM2X/7
使用这个:^d+(?:.d+)*(?:,d+)?$
它确保最多可以有一个逗号,并且这样的逗号必须以至少一个数字开头,后跟至少一个数字,但是逗号是可选的。
它还确保任何句点出现在逗号之前(如果存在(,并且没有前导尾随或连续逗号。
有效输入:
10.000.100,00
10.000.100
100
无效输入:
10,000,100.00
10.000.100,0.0
10.000.100,
10.000.
.10.000
10..100
有关演示,请参阅 regex101.com。