我正在编写一种方法来获取 DevExpress“过滤器”字符串并将其转换为可用的 SQL 字符串。在大多数情况下,这很容易通过在这里或那里进行简单的字符串替换来实现。然而,有一件事让我摸不着头脑,因为我没有花时间学习 C#/.NET 中的正则表达式。
当使用十进制数时,DevExpress 发出类似“FieldName > 2.0m”的字符串。问题在于数字末尾的小数符号“m”。我需要获取格式为###.###m 的所有子字符串并将它们更改为###.###(其中位数是可变的)。如果我没记错的话,匹配这个数字应该是这样的:
[0-9,.]*
但是我如何查找末尾带有“m”的数字以及如何使用 Regex 类生成一个新字符串并删除了 m?
谢谢!
最佳答案
Regex.Replace(source, @"(\d+\.\d+)m", "$1");
关于.net - 如何使用 C# 正则表达式对象进行此替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2366378/