c#多字替换问题

本文关键字:问题 替换 | 更新日期: 2023-09-27 17:50:51

考虑这样一个情况,我希望在一篇文章中出现的短语"hello world"都替换为"I love apple"。我应该如何编写代码来进行替换?

我知道我可以简单地使用Replace函数来进行替换,但这不是最理想的方法(如果我指定要替换单词"or",它也会替换单词"for"等)。我还能做些什么来达到我的目的吗?

c#多字替换问题

您可以尝试使用带lookbehind的正则表达式:

String urstring = Regex.Replace(urstring,"(?<='W)or|^or","SS")

这将替换所有前面没有字母或数字的"or"。

我认为你可以使用正则表达式

using System;
using System.Text.RegularExpressions;
public class Test
{
   public static void Main()
   {
       string input = "doin some replacement";
       string pattern = @"'bhello world''b";
       string replace = "I love apple";
       string result = Regex.Replace(input, pattern, replace);        
    }
}

下面的链接可能会有帮助

拥有字符串的方式。

使用正则表达式。这已经涉及到,请参考以下内容:

  1. 如何替换c#中的特定单词?

  2. 用。net regexp

  3. 替换字符串中的文本

试着像这样使用正则表达式:

如何替换c#中的特定单词?

或在这里:

如何用括号替换c#中的特定单词?