Wieder mal regular expressions

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

  • #31
    Das Script wird ja Serverseitig ausgeführt, wie in aller Welt soll da der Browser oder das Betriebssystem was in den Quelltext schreiben?

    übrigens: IE, Opera, FF liefern alle das gleiche Ergebnis

    Leider brauche ich den Modifikator "E" um das Ergebnis mit base64 weiter zu verarbeiten. Es muss irgendwie mit diesem http:// ftp:// zusammenhängen.

    http://www.ilovejackdaniels.com/php_cheat_sheet.png

    Kommentar


    • #32
      versuch mal ohne "e".

      Kommentar


      • #33
        gibt das zurück

        "'http://www.google.ch?page='.base64_encode('http://www.yahoo.ch').'"

        Kommentar


        • #34
          liegt also am modifier?
          übrigens, nutze \\1 statt $1.

          Kommentar


          • #35
            Denke ich auch, aber irgendwie gefällt mir dieses Gewurstel aus '&" auch nicht so ganz

            Irgendwie macht für mich das nicht wirklich viel Sinn?

            "'http://www.google.ch?page='.base64_encode('\\1').'\"'"

            Kommentar


            • #36
              <?php

              function callback_func($matches)
              {
              return "http://www.google.ch?page=".base64_encode($matches[1])."\"";
              }

              $subject = '<a href="http://www.google.ch">Text</a> noch mehr text <a href="http://www.yahoo.ch">Text</a>';

              $result = preg_replace_callback('=(http://[^\s]*)"=', 'callback_func', $subject);

              echo $result."<hr>";
              ?>

              liefert den selben Mist

              Kommentar


              • #37
                tut genau das gewünschte. s. quelltext.

                Kommentar


                • #38
                  Also jetzt

                  Ist der Link bei dir auch noch mit dem Slash, oder?

                  Kommentar


                  • #39
                    ja. habe nur mit ie7 getestet.

                    Kommentar


                    • #40
                      Manchmal sieht man vor lauter Bäumen den Wald nicht mehr...
                      eine URL sieht ja normalerweise so aus: http://www.google.ch/index.php?page=bla

                      Jetzt funktioniert auch alles einwandfrei.

                      ---
                      function callback_func($matches)
                      {
                      return "http://www.google.ch/index.php?page=".base64_encode($matches[1])."\"";
                      }

                      $subject = '<a href="http://www.google.ch">Text</a> noch mehr text <a href="http://www.yahoo.ch">Text</a>';

                      $result = preg_replace_callback('=(http://[^\s]*)"=', 'callback_func', $subject);

                      echo $result."<hr>";
                      ---

                      Herzlichen Dank für eure Unterstützung.

                      aeternitas103

                      Kommentar


                      • #41
                        ich möchte stark bezweifeln, dass google eine index.php hat. verstehe nach wie vor nicht, wo das problem liegt.

                        Kommentar

                        Lädt...
                        X