.Net Regex用其他东西替换2个分隔符(包含/独占分隔符)之间的文本

时间:2010-07-08 04:55:29

标签: .net regex

Field1: Unknown1
Field2: Unknown2
Field3: Unknown3

在我的情况下,我想排除以“Field2:”开头的行,它实际上是开始标记“Field2:”结束标记“\ n”并替换为''包括分隔符。

如果我想替换

,那么正则表达式是什么
Field2: Unknown\n  with Field2: SomethingElse\n

2 个答案:

答案 0 :(得分:1)

要完全删除该行(假设输入是一个包含所有以\n分隔的行的字符串):

result = Regex.Replace(input, "^Fielt2:.*\n", "", RegexOptions.MultiLine);

替换行:

result = Regex.Replace(input, "^Field2:.*", "Field2: SomethingElse", RegexOptions.MultiLine);

由于.*将所有内容都捕获到除终止换行符之外的行尾,因此无需使用$来匹配行尾。

答案 1 :(得分:0)

对于这种情况,我们可以简单地使用锚点来匹配该行:

Regex.Replace(input, "^Field2:.*$", "Field2: SomethingElse");