【发布时间】:2018-08-26 06:12:37
【问题描述】:
有人可以提供一个允许的正则表达式:
- 小数点前最多 18 位
- 小数点后两位数
有效值:18.50、5556.50 无效值:18.555、5879.5877 等。
【问题讨论】:
-
您是否考虑过使用
Decimal.TryParse,然后检查上限和精度?这适用于任何用户配置的文化,并确保在解析它时获得相同的值。在这种情况下,正则表达式非常不理想。 ASP.NET 范围验证器将允许类似的验证客户端:msdn.microsoft.com/en-us/library/f70d09xt(v=vs.71).aspx -
请记住,小数点
.是荷兰和许多其他国家/地区的千位分隔符,我们使用,表示分数,.表示千位分隔符。正则表达式过于固定,无法正确支持国际化。
标签: c# .net regex vb.net visual-studio-2010