Visual Studio 2008搜索并替换正则表达式

时间:2010-10-02 17:08:39

标签: regex visual-studio visual-studio-2008 replace

我有一个很大的解决方案,需要更换很多行。 在Visual Studio中,您可以使用正则表达式进行搜索和替换。

我想替换像:

这样的行
rst.Fields("CustomerName").Value
rst.Fields("Address").Value
rst.Fields("Invoice").Value

要:

row("CustomerName").ToString()
row("Address").ToString()
row("Invoice").ToString()

因此保持动态文本部分,这可能会有所不同。

这可能吗?如何?

更新,解决方案:
搜索:rst.Fields{\(.*\)}\.Value
替换:rst\1.ToString()

感谢JaredPar!

3 个答案:

答案 0 :(得分:4)

尝试以下

  • 搜索表达式:ASpecificCommand(\(.*\))\.ASpecificProperty
  • 替换表达式:ATotallyDifferentCommand\1.ATotallyDifferentProperty

注意:这不是一个完美的解决方案。由于涉及(并因此匹配嵌套的parens,正则表达式永远不会是一个完美的解决方案。但是,它应该为您发布的特定模式完成工作

答案 1 :(得分:2)

看起来你已经钉了它。这就是所谓的“标记表达式”,你可以在这里看到另一个例子: http://blogs.msdn.com/b/zainnab/archive/2010/09/12/replace-in-files-tagged-expressions-vstipfind0016.aspx

答案 2 :(得分:2)

答案和解决方案有助于在消息框上进行查找替换。

这适用于Visual Studio 2008(VB .NET):

示例:

MessageBox.Show("Invalid Entry","Error")

查找内容:

MessageBox.Show{(.*,*)}

替换WIth:

Error.ShowError\1\2

结果:

Error.ShowError("Invalid Entry","Error")