c# - 使用 lambda 表达式替换正则表达式匹配

标签 c# regex lambda substitution

我正在寻找一个简单的正则表达式查找和替换解决方案,我可以只提供一个 lambda 表达式来替换每个匹配项。例如:

regex.MatchReplace(text, match => "replacement string");

这样我就可以创建自己的逻辑来生成替换字符串,这可能涉及调用各种方法等,即替换模式无法做到的事情。任何人都知道我如何才能做到这一点?

最佳答案

Regex 已经有了一个。例如,

string input="abc123def";
var output = Regex.Replace(input, @"\d", m=>(m.Value[0]-'0'+ 5).ToString());
Console.WriteLine(output);

输出:abc678def

关于c# - 使用 lambda 表达式替换正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31326451/

相关文章:

lambda - 从Kendo UI网格中创建具有相关对象的表达式[FilterDescriptor]

c# - MSTest:从 Assert 获取输出消息?

c# - 在另一个网站中输入数据并使用 C# 返回响应

.net - n 个字符的字符串的正则表达式

regex - 在 R 中删除标点符号和数字文本挖掘后如何在 2 个单词之间留出空格

java - 将变量更改出 lambda java 中的 lambda 表达式范围

C# - 测试期间出现奇数空引用异常,为什么会发生这种情况?

c# - 在异步方法.net core中返回元组结果

用于查找 3 次或更多次出现的正则表达式

python - lambda 表达式在 Python 中接受两个参数时出错