Regex - Evaluator: Ja # Localhost: Nein

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

  • Regex - Evaluator: Ja # Localhost: Nein

    Hallo,

    ich arbeite imo an einem Regex, der folgendes ausliest:

    -Link wieder entfernt- Bsp.: $stammi[1] = '';

    Er soll jeweils die Zahlen in den Klammern [ ] raussuchen:
    PHP-Code:
    <?php

    // Stammi Monate auslesen aus -link entfernt-

    $text file_get_contents("*****");
    echo 
    $text;

    preg_match_all("#\$stammi\[(.*)\] = \'\';#isU",$text,$matches);
    print_r($matches);

    ?>
    (irgendwie werden die Blackshlashes nich angezeigt O.o)

    Ausgabe:

    Code:
    Array
    (
        [0] => Array
            (
            )
    
        [1] => Array
            (
            )
    )
    Das lustige bzw. eher bescheidene ist aber, dass der Evaluator alles als richtig angibt:

    http://regexp-evaluator.de/evaluator...cc24/#ergebnis

    Nun die Frage: Wieso geht es bei mir auf localhost basis nicht?

    mfg
    ps: backshlashes werden nicht angezeigt O.o ... bitte im evaluator gucken
    ps2: hab die links mal wieder entfernt
    Zuletzt geändert von Blackgreetz; 17.10.2007, 14:59.

  • #2
    100% sicher, dass file_get_contents() etwas zurückgibt resp. das echo das ergibt was du erwartest? error_reporting() voll aufgedreht?

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Jup.
      Gibt es genauso aus, wie auf der Orginal Seite.
      (wenn du es nicht glaubst, probier es aus^^)..
      dachte ich auch, dass die \n nicht richtig übergeben werden oder so..

      mfg

      Kommentar


      • #4
        Re: Regex - Evaluator: Ja # Localhost: Nein

        Code:
        preg_match_all('#\$stammi\[(\d+)\]#isU',$text,$matches);
        MfG

        Kommentar


        • #5
          Ich bin ja Blöd ^.^

          Hatte den String in doppelten Anfürhungszeichen statt einfachen, wie im Evaluator.
          Die Blackshlashes hätte ich dann weglassen können ^.^

          Danke trotzdem @core.ak und jahlives

          Kommentar


          • #6
            Wenn du die Backslashes vor den eckigen Klammern entfernst, Matchst du ein Zeichen von diesen: (, ),+ und 0-9

            Kommentar


            • #7
              Vor den eckigen Klammern natürlich nicht, aber vor den einfachen Anführungszeichen ;-) (denk ich mir zumindest^^)

              Hab ja nur die " -> ' gewechselt. ..

              mfg

              Kommentar


              • #8
                ? Ich seh keine " mehr. Das hier
                Code:
                 = ' '
                musst du bei der Regex gar nicht mehr hinschreiben (siehe oben), da du nur die Zahlen in den eckigen Klammern brauchst, wie du ja geschrieben hast. Aber du hast schon recht, das hat nicht funktioniert wegen den Backslashes vor den einfachen hochkommas.

                Kommentar


                • #9
                  Original geschrieben von c0re.ak
                  ? Ich seh keine " mehr. Das hier
                  Code:
                   = ' '
                  musst du bei der Regex gar nicht mehr hinschreiben (siehe oben), da du nur die Zahlen in den eckigen Klammern brauchst, wie du ja geschrieben hast.
                  Jetzt versteh ich, was du meinst ^^... Joa, .. deshalb hatte ich ei einzelnen auch mit einem backshlash versehen .. siehe Evaluator ^^..
                  aber okay.. ich hätte es nicht gebraucht

                  Aber du hast schon recht, das hat nicht funktioniert wegen den Backslashes vor den einfachen hochkommas.
                  -Einigkeit xD-

                  Kommentar

                  Lädt...
                  X