in Fliestext Wörter zu Links umwandeln

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

  • in Fliestext Wörter zu Links umwandeln

    Hallo alle,

    ich bitte euch bei folgendem Problem um Hilfe:

    aus

    PHP-Code:
    $t "Tee, Kaffe, Kakao, EX_Milch, Mehl, Salz, EX_Zucker, Gries, Pfeffer, EX_Majoran, Kümmel"
    (die einzelnen Wörter sind immer durch Komma und Leerzeichen getrennt)

    sollen Wörter die mit EX_ beginnen durch Links ersetzt werden, Ziel ist also:

    PHP-Code:
     $t "Tee, Kaffe, Kakao, <a href='milch.php'>Milch</a>, Mehl, Salz, <a href='zucker.php'>Zucker</a>,
    Gries, Pfeffer, <a href='kümmel.php'>Kümmel</a>, Majoran, Salbei"


    Meine regex-Kenntnisse stossen hier an ihre Grenzen.
    Habe mittlerweile auch den Eindruck, dass das sowieso alles andere als trivial ist.
    Auch bringen mich diverse regexe die man hier und da findet nicht weiter und stiften bei mir nur noch mehr Verwirrung.
    Ich komme hier einfach nicht weiter ....

    Wenn mir jemand von euch helfen könnte: vielen, vielen Dank!!


    gruss,
    Stefan

  • #2
    Code:
    $t = preg_replace('%\bEX_(.*)\b%U', '<a href="$1.php">$1</a>', $t);
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      ah, jetzt bin isch aber feddisch!
      3 Stunden hab ich heute mit dem regex rumgemacht.

      Ich danke dir!!!

      Kommentar


      • #4
        bei umlauten hängts. Aus

        PHP-Code:
        "xxx, EX_Kümmel, yyy"

        wird

        PHP-Code:
        "xxx, <a href="K.php">K</a>ümmel, yyy"
        mrhappines, kannst du mir nochmal helfen bitte? Im voraus danke!


        Achja, ich will das benutzen um auf Wikipedia-Artikel zu verlinken.
        Daher hier für die Forensuche: wikipedia wikiartikel :-)

        Kommentar


        • #5
          Original geschrieben von st2xo
          bei umlauten hängts.
          weil die html-codiert sind ü -> & uuml; (leerzeichen wegen des forums eingefügt) und daher greift anscheinend \b nicht mehr.
          hier mein regex dazu:
          preg_replace('/\bEX_([\w&;]+)/', '<a href="\1.php">\1</a>', $t);

          Kommentar

          Lädt...
          X