Ist /=+Suchwort=+.*=+.*=+/ denn richtiger?
Das + bezieht sich immer nur auf das EINE vorherige Zeichen richtig?
Und ist .* richtig um alle Zeichen inklusive Zeilenumbrüche einzufangen?
Okay, mitlerweile bin ich bei $pattern = "/.*=+ Test =+(.*)=+.*=+.*/s"; angekommenn.
Das s benutze ich damit auch Zeilenumbrüche klappen und die Klammer damit ich auf den Inhalt rückreferenzieren kann. Nun haperts noch am 'greedy' Verhalten:
$pattern = "/.*=+ Test =+(.*)=+.*=+.*/s";
$searchItem = "
Vorher
========= Test =========
Testinhalt
========= Test2 =========
Test2inhalt
=========Test3=========
Test3inhalt
=========Test4=========
Test4inhalt
=== Aha ==";
print preg_replace($pattern, "$1", $searchItem);
Das gibt
[code html]Testinhalt ========= Test2 ========= Test2inhalt =========Test3========= Test3inhalt =========Test4========= Test4inhalt === Aha [/code]
aus.
Daran, das nach Aha die == fehlen, meine ich zu erkennen das mein Pattern zu gierig ist. Wo ich jetzt wie die ? einsetzen muss damit ich nurnoch Testinhalt zur Ausgabe habe, da hapert es noch..
Über Tipps wäre ich sehr dankbar