我在MVC验证中将以下正则表达式用于小数字段。在Chrome中工作正常,但在IE中失败,并显示“意外量词”错误。根据其他相关文章,我知道这与如何解释表达式中的字符有关。我不是使用正则表达式的专家,所以我不确定是哪一部分导致了失败。
这是我从另一篇文章中使用的表达方式。我正在验证一个十进制值。它应该接受逗号和前导十进制的值。感谢您的帮助。
(?<!\S)(?=.)(0|([1-9](\d*|\d{0,2}(,\d{3})*)))?(\.\d*[1-9])?(?!\S)
以下内容在此有效。
"100,000",
"100000",
"999.999",
"90.0009",
"1,000,000",
"1,000,023.999",
"0.111",
".111",
"0",
"dogs 123 cats 456",
"111 222 333"
以下内容无效。
"",
"1,1,1.111",
"000,001.111",
"1000,000",
"999.",
"0.",
"111.110000",
"1.1.1.111",
"9.909,888",