正则表达式,如果它包含特定单词,则替换整行

时间:2011-07-28 10:26:20

标签: c# .net regex

我有一个word文档,它包含一些机密信息,例如它有NIC:343434343。 我需要一个正则表达式来执行以下操作。

如果它在一行上找到NIC,它应该用指定的文本替换整行。

3 个答案:

答案 0 :(得分:5)

由于默认情况下点与NewLine不匹配,因此您只需使用

即可
.*NIC.*

查找包含“NIC”的行。你可以使用像

这样的表达式
string result = Regex.Replace(originalString, ".*NIC.*", "replacement string");

您可以在ideone.com处看到它。

答案 1 :(得分:2)

使用开头和行尾标记:

^.*NIC.*$

^匹配行的开头,$匹配行尾。如果整行包含“NIC”至少一次,则会导致整行匹配。

答案 2 :(得分:1)

使用此正则表达式:(?m-i)^.*?NIC.*$。它启用多行选项并禁用忽略大小写选项。