如果行包含特定单词,则替换char。正则表达式“查找和替换”

时间:2017-05-24 18:03:11

标签: regex visual-studio

我想只更换字符;,如果该行包含"eeeeeeeeee"); 使用正则表达式与visual studio中的“查找和替换”工具

text = rpt.ReportDefinition.ReportObjects["TextForignHead"] as TextObject;
Adapters.clssReportsArrange.funSetText(rpt, "eeeeeeeeee",  "The Sum in  " + CrncyName2;
text = rpt.ReportDefinition.ReportObjects["TextForignAmount"] as TextObject;
if (CrncyNo2 == "1")
Adapters.clssReportsArrange.funSetText(rpt, "eeeeeeeeee",  "#" + Amount2 + "#;

Find and replace

1 个答案:

答案 0 :(得分:0)

这应该有用。

查找

("eeeeeeeeee"[^\n;]*);

取代:

\1);

您从"eeeeeeeeee"到第一个;匹配,并将整个匹配替换为第一个捕获组加);

Here a demo on regex101.com

编辑:使用Visual Studio 2008,您应该找到:

{"eeeeeeeeee"[^\n;]*};

进一步解释:

  • "eeeeeeeeee"字面匹配"eeeeeeeeee"
  • [^\n;]匹配既不是换行符(\n)也不是分号
  • 的所有字符
  • *运算符代表“零或更多”
  • {...}是一个捕获组。在替换中,您可以使用\1引用其内容(其中1是捕获组的编号)。

因此,从"eeeeeeeeee"开始,您将匹配行中的所有非分号字符,直到第一个“;”。在替换中,您反向引用除;之外的所有模式,并将其与);连接。

Here您可以找到VS08的完整正则表达式语法。