eregi_replace problem

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

  • eregi_replace problem

    Hallo,

    ich moechte mittels eregi_replace buchstaben von a-z in kleine images umwandeln, das klappt auch prima.. nur moechte ich auch gerne html <tags> fuer zb. zeilenumbrueche nutzen... dieses funktioniert dann aber nicht da die buchstaben innerhalb der '<>' ebenfalls in images umgewandelt werden.. kann man das irgendwie loesen? so das ich html tags nutzen kann?

    Vielen Dank.

    Ps. ein kleines beispiel waere nett.

  • #2
    Ein paar Details wären ganz gut. Poste mal den Teil deines Codes zum Wandeln.
    Immer erst mal gucken, ob Benzin im Tank ist ...

    Kommentar


    • #3


      also da gibts eigentlich nicht viel zu posten ich mache das so:

      PHP-Code:
       $text eregi_replace("b","<img src=b.gif>",$text); 

      und nun hab ich das problem das halt wenn ich <br> mache wird das b als image dargestellt und der tag funktioniert ja logischerweise dann auch nicht mehr.

      Kommentar


      • #4
        Hallo,

        sehr knifflig, aber probiere es mal so:
        Code:
        $text = preg_replace("/((<[^>]*)|[a-z])/ie", '"\2"=="\1" ? "\1" : "<img src=\"\1.gif\">"', $text);
        Gruß Jan

        Kommentar


        • #5
          Hallo,

          es funktioniert auch prima, super Danke @all.

          Kommentar


          • #6
            noch eine frage..

            wie kann ich automatisch fuer jeden buchstaben ein image einfuegen lassen?

            PHP-Code:
            *: "<img src=\"\1.gif\">"', $text); 
            laed ja nur 1.gif ... jetzt moechte ich aber das das system checkt.. "ahh, hier steht ein "a" also lade a.gif ... bei b==b.gif und so weiter .. halt um die ganze schreib arbeit zu umgehen...

            also *.gif wobei * immer durch den gefundenen buchstaben (oder Zahl) ersetzt wird.

            Danke!

            Kommentar


            • #7
              Nein, \1 stellt die Backreferenz dar, also den gefundenen Buchstaben. Wenn also "a" ausserhalb eine HTML-Tags gematcht wird, wir "a" durch "<img src="a.gif"> eretzt.

              Das ganze funktioniert momentan nur mit Buchstaben, so sollte es auch mit Zahlen funktionieren:

              Code:
              $text = preg_replace("/((<[^>]*)|[a-z0-9])/ie", '"\2"=="\1" ? "\1" : "<img src=\"\1.gif\">"', $text);
              Gruß Jan

              Kommentar


              • #8
                Ok, schade aber danke nochmal!

                Kommentar


                • #9
                  Ähh, sorry. Ich hab mich wohl falsch ausgedrückt.
                  Denk Dir einfach das erste "Nein" in meinem letzten Posting weg.

                  Der Code den ich oben gepostet habe funktioniert!!
                  Jeder Buchstabe und jede Zahl wird durch den HTML-Code für das entsprechende Bildchen ersetzt.

                  Gruß Jan

                  Kommentar


                  • #10


                    ah, okay, jep habs gerade nochmal getestet und es funktioniert super, vielen Dank @JanS , Du hast mir echt weitergeholfen.

                    Kommentar

                    Lädt...
                    X