有人能提供一个算法来检查输入的字符串是否为正确格式和形式的十进制数吗?
正确格式和形式的规则如下:
- 最多两位小数。
- 实际应用中,最大数字为99,999,999.99。
- 整数部分可以使用空格、逗号或点作为组分隔符。
- 小数部分可以使用逗号或点作为分隔符。
正确格式和形式的示例:
1,234,567.89 // 英式样式 1.234.567,89 // 法式样式 1 234 567,89 // 德式样式 1234567.89 // 数学英文样式 1234567,89 // 欧洲数学样式 12.00 12.0 12
请不要试图提出Decimal.Parse或Decimal.TryParse。这两种方法都会愉快地接受像“1,2,3,4”这样的字符串,这不是我想要的。