Изменить после комментария:
Еще раз посмотрев на требования, я не смог быстро найти единственное решение для регулярных выражений. В ваших комментариях вы упоминаете, что вы используете C #.
Возможное решение состоит в том, чтобы сначала разбить строку на пустые строки, а затем извлечь текст.
Примерно так:
string pattern = @"^$";
foreach (string result in Regex.Split(input, pattern, RegexOptions.Multiline)
{
Regex rxFindSql = Regex(@"PRINT.*?\'{2}\w+?\'{2}", RegexOptions.SingleLine)
MatchCollection matches = rxFindSql.Matches(result);
}
Это должно сработать, но я не тестировал код.
Надеюсь, это поможет.