Regex Problem

ezias

Erfahrenes Mitglied
Hallo ich habe folgendes Problem in einem Script.
Leider hab ich im Form nichts genaues gefunden was mein Problem löst google war leider auch nicht hilfreich.

Nun zu meinem Problem.
Ich öffne mir in meinem Script eine HTML Datei und lese mir mit der file () den Inhalt aus anschließend füge ich mit der implode () Funktion den Inhalt in einen String.
PHP:
<?php
$file = file ("lala.html");
$string = implode ($file);
?>
Soweit funktioniert auch alles. Nun habe ich im HTML Code z.B. einen Teil der zwischen steht.
HTML:
[repeat]<font size="2">lala</font>[/repeat]
Also dachte ich mir ich könnte mittels eines Regex mir diesen Teil auslesen.
PHP:
<?php
$regex = "#\[repeat\](.*)\[/repeat\]#isU";
$output = preg_replace ($regex, "\\1", $string);
?>
Das funktioniert aber leider nicht. Ich dachte es liegt vieleicht daran das ich auch Zeilenumbrüche zwischen dem [repeat][/repeat] Block habe. Deshlab habe ich an den Modifiers rumgespielt aber leider auch ohne erfolg.

Ich hoffe ihr habt verstanden was ich meine.
Danke für eure Hilfe.
 
Erstmal danke für deine Antwort.

Ich bau mir grad meine eigene kleine Templateklasse und da ich sonst immer mit Platzhaltern gearbeitet habe war mein Problem das ich meistens 2 HTML Dateien gebraucht habe, einmal eine mit dem head und body bereich und einmal eine in der nur der HTML Code für die sachen stand die wiederholt werden sollen. Also hab ich mir gedacht mach ich eine HTML Datei und setz den Teil der wiederholt werden soll zwischen 2 Tags die ich mir dann auslese, zuerst solange wiederhole wie es notwendig ist dieses dann in eine Variable schreibe und zum schluß den Teil der wiederholt werden soll komplett durch den Code in der Variable ersetze.

Ich weiß auch das es schon viele Template Klassen gibt die soetwas oder so ähnlich beherschen. Ich wollte aber 1. mir eine Klasse schreiben die auf meine Bedürfnisse zugeschnitten ist und 2. mit Klassen arbeiten üben.
 
Zurück