Strings in .php Dateien suchen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Strings in .php Dateien suchen

    Hi,

    ich wioll einen String in einer .php Datei suchen. Ich weiß, dafür gibt es CMS Datenbanken, aber wir haben nun mal keine und deshalb suche ich direkt in der Datei.
    Folgendes:

    [COLOR=limegreen]$datei[/COLOR] wird geöffnet und darin wird [COLOR=limegreen]$string[/COLOR] gesucht.
    Alle php tags verden mit [COLOR=limegreen]eval($dateizeile);[/COLOR] geparsed und anschliessend wird die Datei dargestellt, wobei der [COLOR=limegreen]$string[/COLOR] mit
    PHP-Code:
    preg_replace($string"<SPAN style=\"background-color:yellow\">".$string."<\/SPAN>"); 
    farblich markiert wird.

    So weit so gut! Allerdings machen mir die verdammten Html-Tags Probleme. Ich brauche eine Regexzeile, die [COLOR=limegreen]preg_replace[/COLOR] in dem Fall ignoriert, wenn sich [COLOR=limegreen]$string[/COLOR] innerhalb eines Html Tags befindet. Is'ne knifflige Puzzelaufgabe was?
    __________________________
    *** There's no place like 127.0.0.1 ***

  • #2
    sieh dir mal unser tutorial zum thema an. da ist auch ein punkt erweiterte patterns drin (könnte helfen)

    Kommentar


    • #3
      Vielen Dank. Manchmal hilft eben doch mal nachlesen. Obwohl mir der PHP chat auf Undernet auch etwas geholfen hat

      Also für alle die es auch brauchen, hier der Code:


      PHP-Code:
            if (!preg_match("/<[^>]+".$_GET['stichwort']."[^<]+>/i"$item))
            {
               
      $item=preg_replace("/(".$_GET['stichwort'].")/i","<span style='background-color:yellow'>$1</span>",$item);
            } 
      Allerdings gibt es noch immer einen Fall in dem es nicht funktioniert, aber verglichen mit den Microsoft-Bugs ist das ja noch eine akzeptable Fehlertoleranz :P

      Danke nochmal...
      Zuletzt geändert von jascha; 19.04.2004, 17:27.
      __________________________
      *** There's no place like 127.0.0.1 ***

      Kommentar


      • #4
        der fall wäre? vielleicht kann dein einer unserer regex²perten helfen.

        Kommentar


        • #5
          Der Fall ist: Wenn das Suchwort sich in einem Link befindet.

          Ich glaube, man muss dafür die Kondition aus dem if operator rausnehmen und direkt in die preg_replace() Zeile einbauen... Bin mir aber auch nicht sicher *szeufz*
          __________________________
          *** There's no place like 127.0.0.1 ***

          Kommentar

          Lädt...
          X