Visual Studio查找和替换正则表达式〜查找带引号字符串的行,不包含字符串include或trace

时间:2010-04-20 10:41:30

标签: regex visual-studio-2008 replace

Visual Studio查找和替换正则表达式

查找带引号字符串的行,不包含字符串include或trace

我试图找出包含一些文本的c ++项目中的所有行

因为我必须使用visual studio,所以我必须使用它的查找和替换

http://www.codinghorror.com/blog/2006/07/the-visual-studio-ide-and-regular-expressions.html

所以,找到所有行:print(“abc”);这是写的

:Q

它会找到所有引用的字符串

好的,但是我也有很多行,比如#include“stdio.h”和trace(“ * step 1 * ”)

我找出正则表达式以获取包含include和trace

的所有行

<包括|迹>

所以,我的问题是:如何找到所有带有“引用字符串”的行 但不包含字符串的行包含和跟踪?

1 个答案:

答案 0 :(得分:1)

试试这个:

^~(.*<(include|trace)>).*:q

~(whatever)是VS做出负面预测的方式。这匹配从该行的开头到该行上最后一个引用的字符串的结尾。如果你想匹配整行,你也可以这样做:

^~(.*<(include|trace)>).*:q.*$

请注意,这将排除包含“include”和“trace”字样的行,即使它们位于带引号的字符串中。