Hallo
Aufgabenstellung:
Ich muss den Text zwischen zwei HTML tags (z.b.: <pre>zufindendertext</pre>) finden, verändern und wieder hineinschreiben.
Aus
HTML-Code:
<body>
<pre>text1</pre>
Irgendwas
<pre>text2</pre>
Irgendwas
<pre>text3</pre>
</body>
soll werden:
HTML-Code:
<body>
<pre>veränderter text1</pre>
Irgendwas
<pre>veränderter text2</pre>
Irgendwas
<pre>veränderter text3</pre>
</body>
Mein Ansatz was das ich zuerst mit preg_match alle <pre>|</pre> suche, verändere und in ein array speichere. Was soweit auch funktioniert.
Als zweiten schritt will ich mit preg_replace_all die werte aus dem Array wieder einsetzen:
Code:
preg_replace("/<pre>([\s\S]*?)<\/pre>/e", "$array" ,$string)
Dadurch erhalte ich:
HTML-Code:
<body>
<pre>Array</pre>
Irgendwas
<pre>Array</pre>
Irgendwas
<pre>Array</pre>
</body>
Leider nicht das gewünschte. In der Dokumentation stehn leider nur die Fälle:
pattern = array
pattern und replace = array
aber nicht:
nur replace = array
Bin ich zu blöd die Doku zu lesen, geh ich das ganze falsch an oder ist der Fehlerteufel drin?