在编程时经常只记得函数名称的部分内容,想快速定位,但C#编辑器的函数列表没有搜索功能,用正则表达式搜索可以解决这个问题,现将此过程写成一个宏。
使用方法:
打开VS的宏编辑器,粘贴以下代码。为此宏指定一个快捷键(可选)用快捷键或直接运行宏,输入函数名称即可。用F3可以搜索下一个符合要求的函数。
Sub SearchFunction()
'根据函数名称搜索函数
'By pharaoh 2005-4-19
'http://blog.csdn.net/pharaoh/
Dim sFind As String
sFind = InputBox("输入函数名称")
DTE.Find.FindWhat = "^[ \t]*(public |protected |private |static).*" + sFind + ".*\(.*$" '"^[ \t]*(public |protected |private |static).*" + sFind + ".*\([^;]*\).*$"
DTE.Find.Target = vsFindTarget.vsFindTargetCurrentDocument
DTE.Find.MatchCase = False
DTE.Find.MatchWholeWord = False
DTE.Find.Backwards = False
DTE.Find.MatchInHiddenText = True
DTE.Find.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxRegExpr
DTE.Find.Action = vsFindAction.vsFindActionFind
DTE.Find.Execute()
End Sub
此宏的主体使用VS的记录宏生成,经过少量修改而成。使用此方法可以快速生成一些对自己有用的宏。