[英]How to find with lookahead in Visual studio 2012 Regex Find and Replace
我试图找到所有使用cs文件中的语句,其中包含对其后面的文件中任何位置的类的引用。
例如,我想using Example.Foo;
匹配using Example.Foo;
如果在其后的文件中的任何位置找到BaseClass<SomeClass>
。
像这样:
我试过(using Example.Foo;)(?=[.\\s\\n]*BaseClass\\<SomeClass\\>[.\\s\\n]*)
但没有快乐...
UPDATE
为清楚起见,这适用于VS 2012 IDE查找和替换对话框。
您需要添加一个(?s),它可以启用多行匹配,并且还可以using Example.Foo
延长时间。 正则表达式应该是这样的:
(?s)using Example\\.Foo;(?=.*BaseClass<SomeClass>)
我自己想通了。
(?s)using Example\.Foo;(?=(.*|\s\r)BaseClass\<SomeClass\>(.*|\s\r))
这就是诀窍!
感谢(?s)
提示,这是必需的! 为此+1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.