Teil von Variable auslesen und ändern

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

  • Teil von Variable auslesen und ändern

    Hallo,
    ich stehe gerade auf dem Schlauch.

    Ich lese in meiner Mysql-DB die Variable $text aus und gebe sie per echo einfach aus.

    Teilweise ist am Ende im Test etwas wie << Beispiel.txt >> das ich zu einem Link automatisch ersetzten will.

    Also das Format sind immer zwei aufgehende Klammern, Leerzeichen, Dateiname,Punkt,Typ, Leerzeichen und zwei zugehende Klammern.

    Wie weise ich jetzt den Dateinamen und den Typ einer eigenen Variablen zu so dass ich mir nen Link daraus bauen kann und dieses << Beispiel.txt >> dadurch ersetzte?

    Gerade total verwirrt.
    http://www.nanc-angel.de

  • #2
    Mithilfe von Regulären Ausdrücken. Du hast die Gegebenheiten ja schon schön definiert (zwei Kleiner-als-Zeichen, Leerzeichen, Dateiname usw.); das lässt sich in null komma nichts in ein Muster verwandeln.

    Grüße
    Nieder mit der Camel Case-Konvention

    Kommentar


    • #3
      preg_replace

      Kommentar


      • #4
        Original geschrieben von BugBite
        preg_replace
        Ich denke hier ist preg_match() gesucht. Die ursprüngliche Variable soll nicht verändert werden, lediglich ein bestimmter Teil extrahiert, um einen Link zu generieren. Ich lasse mich aber gerne eines Besseren belehren.

        Grüße
        Nieder mit der Camel Case-Konvention

        Kommentar


        • #5
          Original geschrieben von Griecherus
          Ich denke hier ist preg_match() gesucht. Die ursprüngliche Variable soll nicht verändert werden, lediglich ein bestimmter Teil extrahiert, um einen Link zu generieren. Ich lasse mich aber gerne eines Besseren belehren.

          Grüße
          Naja, und preg_match liefert die Anzahl der Treffer eines regulären Ausdrucks zurück.
          preg_replace ist in dem Fall also schon richtig (er will ja, wie du schon sagtest einen Teil extrahieren)

          B2T: Ich bin leider nicht so bewandert in regulären Ausdrücken sonst würd ich dir einen erstellen...

          Kommentar


          • #6
            Original geschrieben von Schanz
            Naja, und preg_match liefert die Anzahl der Treffer eines regulären Ausdrucks zurück.
            preg_replace ist in dem Fall also schon richtig (er will ja, wie du schon sagtest einen Teil extrahieren)

            B2T: Ich bin leider nicht so bewandert in regulären Ausdrücken sonst würd ich dir einen erstellen...


            preg_match() liefert nicht nur die Anzahl der Treffer des Musters. Der dritte Parameter array &$matches beinhaltet auch alle Treffer des Musters.
            Code:
            /<<\s*([^>]+)\s*>>/
            Nieder mit der Camel Case-Konvention

            Kommentar


            • #7
              Jetzt habe ich es schon mehrfach probiert, bekomme aber nicht das hin was ich möchte.

              Meine Variable heißt ja $test. Hier mal ein Beispiel:
              $test ="Dies ist ein testtesxt. Ich werde später noch gebraucht.<br><< test.txt >>";

              Wie kann ich jetzt den << test.txt >> ersetzten, das daraus ein Link wird? Der vorstehende Text der Variablen wird nch gebraucht.
              Zuletzt geändert von firebirder; 10.08.2008, 18:06.
              http://www.nanc-angel.de

              Kommentar


              • #8
                was genau hast du eigentlich vor? so was?
                PHP-Code:
                //test.txt
                <a href="bla.htm">blubb</a>

                //dein code
                $test 'Dies ist ein testtesxt. Ich werde später noch gebraucht.<br><< test.txt >>';
                preg_match ('/<<\s*([^>]+)\s*>>/'$test$hit);
                $link file_get_contents ($hit[1]);
                $text str_replace ($hit[0], $link$test);
                echo 
                $text
                peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Kommentar

                Lädt...
                X