Visual Studio 2010 - 搜索仅替换qoutes或双引号中的文本

时间:2011-08-12 09:33:32

标签: visual-studio-2010 replace

我想搜索/替换文本,但只能在Visual Studio 2010 IDE中使用引号中的文本,这可能吗?

例如我想改变

属性oldValue

in

NEWVALUE

但仅当搜索到的文本被引号或双引号括起来时,就像这样

string something = "This string have oldValue"; // replace this  
int oldValue = 44; // don't replace this

顺便说一句。这不仅限于C#或VB.NET代码,我想在其他文件类型上执行此操作,例如SQL脚本等。

1 个答案:

答案 0 :(得分:3)

您可以在Visual Studio的查找对话框中使用正则表达式选项。

您的“找到什么”会是这样的:{".*}oldValue{.*"}

这会找到一个双引号,后跟任何字符,然后是你的“oldValue”,然后是任何字符,最后是另一个引号。

您的“替换为”将是:\1newValue\2

这将保留oldValue前面或后面的任何内容。

由于此正则表达式未在内部引号中查找值,因此只有前后引号的值才会错误地对以下内容起作用:"abc" oldvalue "123"