Lazyloader: Preg_Replace - reguläre Ausdrücke

Hallo,

ich habe ein CMS Plugin was für den Lazyloader den Content umschreibt:

  
    function lazyload($buffer)  
      {  
        $plugin_dir_path = plugin_dir_url(__FILE__);  
        $pattern         = '/((?:\<img).*)(src)/';  
        $buffer          = preg_replace($pattern, "$1 src='" . $plugin_dir_path . "shade.gif' ImageHolder", $buffer);  
        return $buffer;  
      }  

Das Funktioniert auch einwandfrei. Allerdings schreibt es "alle" Bilder um. Dieses führt dazu das Bilder bei denen man weiß das Sie im direkt sichtbaren Bereich sind, auch über das Lazyloadplugin laufen.
Wichtig wäre mir daher die Einschränkung nicht alle Bilder sondern "ausschließlich" die mit dem Hinweis '' width="150" height="150" '' um zu schreiben.
Könnte mir jemand Helfen die Regulären Ausdrücke '/((?:<img).*)(src)/'; so zu erweitern.

Vielen Dank

  1. @@Lazyloader:

    nuqneH

    Wichtig wäre mir daher die Einschränkung nicht alle Bilder sondern "ausschließlich" die mit dem Hinweis '' width="150" height="150" '' um zu schreiben.

    „um zu schreiben“ ist der (erweiterte) Infinitiv mit „zu“ von „schreiben“. (Bsp.: Ich suche einen Stift, um zu schreiben.)

    Der Infinitiv mit „zu“ von „umschreiben“ (das, was du meinst) ist „umzuschreiben“.

    Darf’s auch 'height="150" width="150"' sein? Oder mit einfachen Anführungszeichen? Oder gar keinen? Stehen die Angaben vor oder nach dem src-Attribut? Wo steht das alt-Attribut?

    Es sollte deutlich werden, dass reguläre Ausdrücke* ein denkbar schlechtes Mittel sind, um HTML zu parsen. Verwende einen HTML-Parser!

    Qapla'

    * Dein Suchmuster ist übrigens nicht regulär.

    --
    „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)
    1. Es sollte deutlich werden, dass reguläre Ausdrücke* ein denkbar schlechtes Mittel sind, um HTML zu parsen. Verwende einen HTML-Parser!

      Dein Link führt auf eine 404 Seite. Dieser muss so aussehen.

      1. Hallo,

        Es sollte deutlich werden, dass reguläre Ausdrücke* ein denkbar schlechtes Mittel sind, um HTML zu parsen. Verwende einen HTML-Parser!
        Dein Link führt auf eine 404 Seite. Dieser muss so aussehen.

        nein, der führt nur auf das Google-Eingabeformular.
        So sollte er lauten.

        Ciao,
         Martin

        --
        Auch in Eckkneipen geht es manchmal rund.
        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(