Was ist in PHP5 auf Lager eine gute preg_replace
Ausdruck, um diese Umwandlung vorzunehmen:
Zeilenumbrüche ersetzen durch <br />
, aber nur innerhalb <pre>
Blöcke
(Es steht Ihnen frei, vereinfachende Annahmen zu treffen, und Eckfälle zu ignorieren. Zum Beispiel können wir annehmen, dass die Tags einzeilig sind und nicht pathologische Dinge wie )
Text eingeben:
<div><pre class='some class'>1
2
3
</pre>
<pre>line 1
line 2
line 3
</pre>
</div>
Sortie :
<div><pre>1<br />2<br />3<br /></pre>
<pre>line 1<br />line 2<br />line 3<br /></pre>
</div>
(Motivierender Kontext: Ich versuche, den Fehler 20760 in einer wikimedia SyntaxHighlight_GeSHI-Erweiterung zu schließen, und stelle fest, dass meine PHP-Kenntnisse (ich mache hauptsächlich Python) nicht ausreichen).
Ich bin offen für andere Lösungen, neben regexen, aber klein ist bevorzugt (als ein Beispiel, Gebäude html parse Maschinerie ist overkill).