.net - 如何使用 C# 正则表达式对象进行此替换?

标签 .net regex

我正在编写一种方法来获取 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/

相关文章:

ASP.NET 4.5异步等待和Response.Redirect

.net - 如何优化ASP.NET中在后台运行的线程的性能?

javascript - 为什么 Javascript 不支持lookbehind断言?

java - 提取字符串的位置并将信息与该部分相关联

c++ - 包装非托管 C++ 类以便 .Net 托管客户端应用程序可以使用它们的最佳方法是什么?

c# - 如何在第三个项目中引用和使用 .NET Core 3.0 和 .NET EF 4.7 项目,并使用它们的数据库连接?

php - 正则表达式显示错误

mysql - 如何在 MySQL 中结合 regex + UPDATE 为 FirstnameLastname 添加空格

python - 为什么我的正则表达式有奇怪的行为?这是一个错误吗?

c# - 为什么我的 WCF 客户端在调用引发事件的 WCF 服务器中的方法后超时?