Veja se isso funciona:
(\&[\r\n]*%[\r\n]*%)+([^%\&]*)(%[\r\n]*%[\r\n]*\&)+
O arquivo limpo deve ser
%%& BUNCH OF TEXT EVEN MORE TEXT
TEXT HERE TOO &%%
Se você não quiser perder &%%
e %%&
, isso também pode ser feito.
Substitua por (\&[\r\n]*%[\r\n]*%)+([^%\&]*)(%[\r\n]*%[\r\n]*\&)+
por (\&%%)\n(%%\&)
E você precisa ativar a opção . matches newline