<p>.... text .....</p>
<h1>Title</h1>
text text text
<br>
<pre>IMPORTANT</pre>
<p>.... text .....</p>
<pre>IMPORTANT2</pre>
задача - вставить копию тега <pre> и его содержимого после ближайшего предыдущего закрывающего тега <p> или <h> =) т.е. должно получиться:
<p>.... text .....</p>
<h1>Title</h1><pre>IMPORTANT</pre>
text text text
<br>
<pre>IMPORTANT</pre>
<p>.... text .....</p><pre>IMPORTANT2</pre>
<pre>IMPORTANT2</pre>
// Регулярные выражения не годятся для модификации html. Не сложно подобрать такие входные данные, на которых выражение поведёт себя некорректно с точки зрения html.