我有以下几行代码,
int Foo(char);
int Foo()
{
//do something
}
int FooBar(char, char);
foo.Get();
fooBar.Get();
m_FooBar.Get();
case foo:
fooBar(x,y);
我只想搜索具有"Foo"名称的函数引用、声明和定义。结果中只显示上述四条线
- int Foo(char(
- int Foo((
- int FooBar(char,char(
- fooBar(x,y(
我试过
^.*Foo[^.,](+.*$
但它也选择了案例Foo:
这个正则表达式有什么问题?
您可以使用
^.*Foow*(+.*$
请确保不区分大小写,如此regex演示中所示。[^.,]
部分是一个否定字符类,它匹配任何不是点和逗号的字符,它可能匹配换行字符。使用w
时,只能匹配[A-Za-z0-9_]
个字符。
详细信息
^
-字符串的开头(文本编辑器中的行(.*
-除换行符之外的任何0+个字符,尽可能多Foo
-一个Foo
字w*
-0个或多个字母、数字、_
s(+
-1个或多个(
字符.*
-除换行符之外的任何0+个字符,尽可能多$
-字符串结尾(文本编辑器中的行(