我想找到所有 C++ 方法不以“NULL);”结尾的情况 (NULL 和 之间的任意数量的空格)和 ; 仍然应该让它匹配)。
我的代码是:
Dir['**/*'].select { |f| File.file?(f) } .map {
|file| a=File.open(file).read
puts a.grep(/begin((?!NULL\s*\)\s*;).)+;/m)
}
我希望它匹配以下行:
begin
anything in here but a paren any number of spaces semicolon
);
但不匹配
begin
somestuff that doesn't matter NULL);
不匹配
begin
somestuff that doesn't matter
NULL);
问题是我的代码目前只匹配单行。
Rubular 在这里: http ://rubular.com/r/Ex9kmQLecH