Felix Riesterer: spezielles Ersetzen...

Beitrag lesen

Liebe(r) steffi,

wahrscheinlich ist da ein SGML-Parser (oder sowas) sinnvoller, als das mit regulären Ausdrücken zu lösen... mal sehen.

$txt="abc<bla <mist> bla oder auch kein bla mehr nach dem <mist>enthalten ist>, aber nicht, wenn <mist> außerhalb von <> vorkommt";
$zu_ersetzen="<mist>";

  • Also ich suche nach einem ersten "<".

  • Ok. Wenn ich das gefunden habe, dann darf da kein "mist" stehen, denn sonst stünde da ein sozusagen freies "<mist>" auf weiter Flur, ohne umspannendes <>.

  • Ok. Es folgt also kein "mist", sondern ein anderes Zeichen.

  • Ok. Jetzt will ich jedes "<mist>" matchen, das ich finden kann, bevor ich ein herrenloses ">" finde.

  • Ok. Am Ende steht ganz sicher ein ">", also endet da mein Ausdruck.

  • Prima! Jetzt das Ganze als RegExp schreiben! *Uff!

danke, bussi

... muss ich? ... *fg*

Liebe Grüße aus Ellwangen,

Felix Riesterer.