我有一个从mutiline文本框中复制的字符串。我正在寻找一种方法来替换包含特定短语的整行。
例如,字符串如下所示:
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Suspendisse egestas.
所以我想找到一种方法,用新行
elit
替换包含例如短语enim vehicula pellentesque.
的整行,因此结果是: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
匹配。