Christoph Zurnieden: Regulärer Ausdruck um IMG-Tag zu entfernen

Beitrag lesen

Hi,

$content = eregi_replace('(<img [^<]*["|']?([^ "']*)["|']?[^>]>)','', $content);

Warum so kompliziert? So sollte es ausreichen:

$content = eregi_replace('<img [^>]*>', '', $content);

Allerdings würde ich preg_replace verwenden:

$content = preg_replace("/<img ([^>]*)>/", "", $content);

Bevor das tatsaechlich mal jemand im Archiv entdeckt: das funktioniert nur fuer spezielle Faelle, auch wenn das die meisten sind, aber ein '>' ist nunmal in den Attributwerten erlaubt, hier z.B. koennte er durchaus im alt-Text auftauchen. Die grundsaetzliche Idee des OP, sich am '<' aufzuhaengen, das garantiert den Anfang des naechsten Tags anzeigt (valides Markup vorausgesetzt) ist also durchaus nachvollziehbar.
Es ist sogar die Frage, ob es sich ueberhaupt mit einem RegExp endlicher Groesse loesen laesst.

so short

Christoph Zurnieden