PHP Fehler mit "zufallsprinzip" :)

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

  • PHP Fehler mit "zufallsprinzip" :)

    hi

    ich habe da eine regex, welche z.T funktioniert, z.T nicht.

    also, die sieht so aus:

    PHP-Code:
    $kurzurl=preg_replace("¦(.:/)(.*)(.{13})¦","\\1[...]\\3",$localurl); 

    wobei $localurl zb so aussieht: K:/file-grabber/50501-51000/50982-02.mpg

    die fehlermeldung ist folgende:
    Warning: Unknown modifier '(' in K:\file-grabber\programm\file-grabber.php on line 503

    was hat das zu bedeuten??

  • #2
    Re: PHP Fehler mit "zufallsprinzip"

    Original geschrieben von fabio
    Warning: Unknown modifier '(' in K:\file-grabber\programm\file-grabber.php on line 503

    was hat das zu bedeuten??
    vermutlich, dass er hinter dem ersten klammerausdruck (.:/) einen modifier für die anzahl erwartet, aber stattdessen eine ( vorfindet - die kein gültiger modifier ist.

    setze also {1} dahinter, wenn der ausdruck genau ein mal gefunden werden soll - oder lasse die klammerung an der stelle ganz weg, wenn du keine backreference auf diesen ausdruck benötigst.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      hm, wie meinst du das mit dem {1}???

      PHP-Code:
      $kurzurl=preg_replace("¦(.:/){1}(.*)(.{13})¦","\\1[...]\\3",$localurl); 
      wenn ich es so mache, kommt nun dieser fehler:
      Warning: Unknown modifier '{' in K:\file-grabber\programm\file-grabber.php on line 503


      und wie kann es denn kommen, dass er ab und zu kommt??

      zeigt php diese meldung nur nach lust und laune?

      Kommentar


      • #4
        ich meine, wie ist es rein technisch gesehen möglich, dass ein fehler "per zufall", rsp. durch ein für mich noch nicht ersichtliches muster erscheint??

        habe bis mal die $localurl von denen angeschaut, bei denen's funktiniert, und bei denen, wo es nicht klappt.

        bis auf die nummerierung ist alles exakt das selbe.

        da gibt es keinen unterschied.

        Kommentar


        • #5
          sorry, da hab ich wohl quatsch erzählt - modifier mit quantifier verwechselt ...

          irgendwas stimmt mit dem ersten teil des ausdrucks wohl noch nicht. schon mal versucht, einen anderen delimiter als dieses eigenartige ¦ zu benutzen?
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            hm, hab bis jetzt immer mit denen gearbeitet.

            werd aber mal n anderen nehmen.
            einfach mal das !

            aber sind die modifier nicht die sachen hinter den delimiter? also zb das "i"

            Kommentar


            • #7
              hm, wie es aussieht hat es an dem gelegen.

              sieht jetzt so aus:
              PHP-Code:
              $kurzurl=preg_replace("!(.:/)(.*)(.{13})!i","\\1[...]\\3",$localurl); 
              hab noch ein "i" als delimiter rangetan, einfach, dass es einen hat


              aber bis jetzt funktioniert es und der fehler ist noch nicht aufgetreten.

              also, aber was mich wundert und intressiert, ist, WIE kann so etwas passieren.

              ich meine, wenn es das eine mal geht, warum geht es dann nicht immer??

              Kommentar

              Lädt...
              X