我从多行文本框中复制了一个字符串。我正在寻找一种方法来替换包含特定短语的整行。 例如,字符串如下所示:
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Suspendisse egestas.
所以我想找到一种方法来用新行 enim vehicula pellentesque.
替换包含例如短语 elit
的整行。因此结果将是:
Lorem ipsum dolor sit amet,
enim vehicula pellentesque.
Suspendisse egestas.
有什么快速的方法吗?
谢谢
最佳答案
var regex = new Regex(@"^.*\Welit\W.*$", RegexOptions.Multiline);
string result = regex.Replace(original, "enim vehicula pellentesque.");
RegexOptions.Multiline
是关键;它说应用 ^
, ( = "beginning") 和 $
( = "end") 来表示行的开始和结束,而不是字符串的开始和结束。
\W
会在 elit
的两边寻找非单词字符,例如fooelit
不会匹配,但 foo elit
会匹配。
关于c# - 字符串 : replace a line which contains a word,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4908034/