我想在我的代码库中搜索出现的位置,其中人们复制了例如向量。 现在我试着用正则表达式vector<.*>[ ]+
都在Visual Studio 2010和grep,但我似乎得到了一些非常错误的东西,因为它不起作用。 有人能指出一个正确的变体,它适用于其中之一吗?矢量副本的正则表达式
编辑: 我试图像vector<foo> blub = othervec;
我想在我的代码库中搜索出现的位置,其中人们复制了例如向量。 现在我试着用正则表达式vector<.*>[ ]+
都在Visual Studio 2010和grep,但我似乎得到了一些非常错误的东西,因为它不起作用。 有人能指出一个正确的变体,它适用于其中之一吗?矢量副本的正则表达式
编辑: 我试图像vector<foo> blub = othervec;
匹配的东西你可能想:
vector<[^>]*>\s+
其中[^>]*
字符类将保持匹配,直到找到收盘>
和\s+
会找到一个或多个空白字符。
为了不必在grep中跳出+
,您需要使用-E
标志。或者,您可以逃避+
为\+
:
$ cat file
vector<foo> blub = othervec;
$ grep -E 'vector<[^>]*>\s+' file
vector<foo> blub = othervec;
$ grep 'vector<[^>]*>\s\+' file
vector<foo> blub = othervec;
很遗憾,这在Visual Studio 2010或grep中不起作用。 – abergmeier
已更新的答案。 – beerbajay
谢谢。基于此,我现在使用:'vector <[^>] *> \ s +。* =' – abergmeier
能否请您提供您正在尝试以匹配一些例子吗? – npinti