Matthias: RegExp Warning "REG_ERANGE"

Beitrag lesen

Hallo,

ich habe einen regulären Ausdruck gebildet, der meine Dateien nach img-Tags durchforsten soll. Ziel soll es sein das img-Tag in drei Teile aufzuspalten
a) alles vor dem "src" Attribut
b) Inhalt des "src" Attributs
c) alles nach dem "src" Attribut

Hier mein Ausdruck:
_____________________________________________________
(<img )(((class|id|style|title|alt|align|alt|border|height|name|usemap|width|onmouseover)="[\w\-"';:,\.\(\)=/ ]*" )*)src="([\w/\-\. ]*)"(([ ]*(class|id|style|title|alt|align|alt|height|name|usemap|width|onmouseover)="[\w\-"';:,\.\(\)=/ ]*"[ ]*)*)( />)
_____________________________________________________

Für eine bessere lesbarkeit ist diese Version wohl besser geeignet:
_____________________________________________________
(<img )
 (
  (
   (class|id|style|title|alt|align|alt|height|name|usemap|width|onmouseover)
   ="[\w\-"';:,\.\(\)=/ ]*"
  )*
 )
 src="
 ([\w/\-\. ]*)
 "
 (
  (
   [ ]*
   (class|id|style|title|alt|align|alt|border|height|name|usemap|width|onmouseover)
   ="[\w\-"';:,\.\(\)=/ ]*"[ ]*
  )*
 )
 ( />)
_____________________________________________________

Genutzt wird die Funktion ereg_replace(...) von PHP. Wenn ich aber meinen Ausdruck verwende wird der komplette Datensatz gelöscht, ich versteh einfach nicht warum, zumal in meinem Regex-Tester (The Regex Coach) der Ausruck und der Datensatz richtig zusammenarbeiten.
Hab ich vielleicht die Backslashes falsch auskommentiert. Ich seh leider keinen Fehler und PHP hilft mir da nicht unbedingt weiter "Warning: ereg_replace()... REG_ERANGE in c:........php on line x"

Weiß jemand woran es liegen könnte?

Grüße, Matthias