Servus mixmastertobsi,
$test= "<p>testtest</p><b>test2test2</b><p>test3</p>"; $test= preg_replace("/<p>(?!<\/p>)..*<\/p>/i","",$test);
Im Ergebnisse sollte also beim dem String noch "<b>test2test2</b>" stehen bleiben.
Bis jetzt ist dein Regex noch gierig. "/<p>(?!</p>)..*</p>/iU" tut in deinem Beispiel, was du willst.
Siehe: http://php.net/manual/de/reference.pcre.pattern.modifiers.php -> U (PCRE_UNGREEDY)
ciao
--
"Sir, we are surrounded" - "Excellent, we can attack in any direction!"
"Sir, we are surrounded" - "Excellent, we can attack in any direction!"