我不了解正则表达式,发现文档很难理解。 目前我使用这个表达式
@"\d+(\R.\d{0,2})?"
它只允许我想要的小数,但它不允许负数。
我发现了关于同一主题的这个问题:
How do I include negative decimal numbers in this regular expression?
但我只是看不出我需要改变我的表达方式才能让它发挥作用。
我很感激这方面的一些帮助。 如果有一些关于这个主题的文档清楚易读和理解也很好。
答案 0 :(得分:2)
使用^-?\d+(?:\.\d{0,2})?$
,但您的正则表达式允许使用20.
这样的数字,所以我建议至少为此^-?\d+(?:\.\d{1,2})?$
添加一些数据。
另请不要忘记^
和$
。您可以使用www.regex101.com/,在那里可以试用正则表达式并观看好的文档。
答案 1 :(得分:1)
您可以将-
包括在内
@"[+-]?\d+(\R.\d{0,2})?"
Check this simple Cheat sheet for C# regular expressions metacharacters, operators, quantifiers etc 并且肯定https://regex101.com是在线正则表达式测试器的最佳位置