.net - 用于删除尾随零的正则表达式

标签 .net regex

我正在寻找一个正则表达式 (.NET) 来删除尾随零:

11645766.560000001000   ->  11645766.560000001
10190045.740000000000   ->  10190045.74
1455720.820000000100    ->  1455720.8200000001  

etc...


I am using regex, over String.Trim(), because the numbers are in one string, actual example:

!BEGIN !>>C85.18 POS_LEVEL.T129{11645766.560000001000} = POS_LEVEL.T129 {10190045.740000000000} + WORK_LEVEL.T129{1455720.820000000100} END;

需要转换为:
!BEGIN !>>C85.18 POS_LEVEL.T129{11645766.560000001} = POS_LEVEL.T129{10190045.74} + WORK_LEVEL.T129{1455720.8200000001} END;

最佳答案

如果数字嵌入在随机字符串中,则使用正则表达式:

替换 (?<=\.\d+?)0+(?=\D|$) 带有空字符串

如果尾随零以十进制数出现在句点之后,这将修剪尾随零(它将始终保留一个零)。它还解释了出现在最后的数字。

由于您同时添加了 .NET 标记,因此代码如下:

string replaced = Regex.Replace(
                         inputString,
                         @"(?<=\.\d+?)0+(?=\D|$)",
                         String.Empty);

关于.net - 用于删除尾随零的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1105653/

相关文章:

regex - 使用 sed 删除前导空格

javascript - 在 Javascript 中用正则表达式替换独立字符串

c# - 如何使我的应用程序可在 C# 中编写脚本?

.net - Azure Devops 管道和多项目 Docker

c# - Lambda 表达式到 Func<T, TResult>

python - scrapy 正则表达式也返回不匹配的 url

c# - 使我的代码线程安全时遇到问题

c# - 正则表达式只允许 .net 中的某些字符

regex - 匹配正则表达式并在单行代码中分配结果

python - 用于提取日期中月份和年份组合的正则表达式