有效地替换字符串中的文本
本文关键字:文本 字符串 替换 有效地 | 更新日期: 2023-09-27 18:11:31
我有一个c#字符串
((65.25 - 26.35)*420000)^2
我需要将常数2替换为2UL但问题是替换方法将所有2替换为2UL例如它像这样替换
((65.2long5 - 2long6.35)*42long0000)^2long
我需要这样的结果
((65.25 - 26.35)*420000)^2long
如何有效地替换,使其他字符串不受干扰
您可以使用基于正则表达式的替换:
var res = Regex.Replace(str, @"(?<!'.)'b2'b(?!'.)", "2UL");
查看regex演示
细节:
-
(?<!'.)
-要求当前位置之前没有.
的负向后看 -
'b
- leading word boundary -
2
-您的值 -
'b
-尾字边界 -
(?!'.)
-一个负向前看,需要在当前位置之后缺少.
。