如何搜索包含2个特定字符串的所有文件?

时间:2014-02-27 06:15:16

标签: c# asp.net regex visual-studio find

在我的Visual Studio中,我想在解决方案或项目中找到包含2个特定单词的所有文件(例如UpdatePanelDropDownCheckList)。换句话说,我喜欢使用我的自制网络服务器控件DropDownCheckList和ASP.NET控件UpdatePanel找到所有文件。

how to find all files containing 2 specific words

怎么做?

2 个答案:

答案 0 :(得分:2)

答案取决于您的Visual Studio版本。 Since VS 2013 they use .net regexes在他们的搜索对话中,所以解决方案看起来像:

^(?s)(?=.*Foobar)(?=.*Test)

(?=...)lookahead assertion

(?s)是一个inline modifier,可使.匹配也换行符

使用旧版本时,会使用一种特殊的正则表达式风格,因此您无法使用前瞻:

(Foobar(.|\n)+Test)|(Test(.|\n)+Foobar)

这里我使用了一个替换来匹配第一个单词A,然后单词B或第一个单词B然后单词A.

(.|\n)+是一种解决方法,可以匹配任何字符或换行符。

答案 1 :(得分:0)

我设法在visual studio中做到这一点。确保将查找对话框设置为使用正则表达式。还得到了这个工作在记事本++'查找文件'功能配置为查看相关的项目目录。他们都使用相同的表达式:

(?is)\A^.(?=(?:(?!\Z).)*?DropDownCheckList)(?=(?:(?!\Z).)*?UpdatePanel)

无论订单如何,它都会在包含它们的所有文件中找到所需的条款。