MVC5项目中Model属性验证的有效值:
从0,01到999,99的十进制数字,但我可以接受0,1或9或9,01
0,01
,1
,20
1
1,2
1,20
00,2
00,20
现在我有:
[RegularExpression(@"^(((\d{1,3})(,\d{3})*)|(\d+))(.\d+)?$", ErrorMessage = "Largura inválida.")]
但它接受“。”超过2位小数。
答案 0 :(得分:2)
您可以使用
^(?!0?(,0?0)?$)([0-9]{0,3}(,[0-9]{1,2})?)?$
请参阅regex demo
解释:
^
- 字符串开头(?!0?(,0?0)?$)
- 禁止前瞻,禁止字符串等于0
,0,0
,0,00
或偶数 ,0
([0-9]{0,3}(,[0-9]{1,2})?)?
- 可选组(由于末尾的?
匹配一次或零次)匹配
[0-9]{0,3}
- zerot o三位数字(,[0-9]{1,2})?
- 可选地匹配一组逗号,后跟1或2位数字$
- 字符串结尾答案 1 :(得分:0)