Примечание. В этом ответе используется синтаксис регулярного выражения, который использовался в Visual Studio до VS 2012 включительно. В VS 2013 и более поздних версиях синтаксис регулярного выражения был изменен.
Вы можете включить \n
в выражение. В качестве примера, вот регулярное выражение, которое я использую для «очистки» автоматически сгенерированных сценариев SQL от всего, что не является хранимой процедурой (оно будет соответствовать текстовым блокам, которые начинаются со строки, содержащей «Object:», за которой следует что-то, что не является "StoredProcedure", затем сопоставление следующих строк до строки, состоящей из слова "GO"):
/\*+ Object\::b:b~(StoredProcedure)(.*\n)
end
), чтобы он не был жадным. то есть:start(.*\n)*.*?end