2010-07-08 70 views
0
Field1: Unknown1 
Field2: Unknown2 
Field3: Unknown3 

的东西对我来说,我要排除行开始与2个之间的分隔符替换文本包容/独家定界符并用''替代包括分隔符。净正则表达式与其他

或者,如果我想更换

Field2: Unknown\n with Field2: SomethingElse\n 

回答

1

要完全删除该行(假定输入是具有用\n分隔的所有行的字符串):

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

要替换该行:

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

由于.*抓住一切除了终止换行符行的末尾,有没有必要使用$到行的末尾匹配。

0

对于这种情况,我们可以平凡使用锚只匹配该行什么是正则表达式:

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

您需要设置'RegexOptions.Multiline',否则它将不起作用,否则'^'和$'匹配字符串的开始/结尾而不是行的开始/结尾。 – 2010-07-08 06:12:13