Ankündigung

Einklappen
Keine Ankündigung bisher.

String Suche beginnend mit Leerzeichen gefolgt von einem Komma

Einklappen

Neue Werbung 2019

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

  • String Suche beginnend mit Leerzeichen gefolgt von einem Komma

    Hallo,

    ich habe in einem PHP Projekte vor ein String, der folgendermaßen aussieht in einem Text zu suchen: ", blabla"
    Die Codezeile sieht so aus:
    PHP-Code:
    $lengh strpos($file' , blabla' ); 
    Leider bringt diese Sequenz den Parser durcheinander, es funktioniert nur wenn ich das führende Leerzeichen weglasse.
    Wie kann ich die Suche dennoch durchführen? Wie kann ich das Leerzeichen escapen? Nirgendwo im Web konnte ich einen Hinweis finden, warum dieses Problem existiert bzw. hat es scheinbar auch niemand anders. Achja, der Parser ist PHP5, falls das hilft.

    Danke im Voraus

  • #2
    Ich denke dass der Fehler woanders liegt.... Dieser "BUG" exisitiert nicht.

    Kommentar


    • #3
      Suche beginnend mit Leerzeichen gefolgt von einem Komma

      PHP-Code:
      $file '012 , blabla';

      $pos strpos($file' ,' );  

      echo 
      $pos;     // ergibt 3 
      Siehst du einen Unterschied?

      Kommentar


      • #4
        Hmm?
        [SIZE="1"]Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.[/SIZE]

        Kommentar


        • #5
          eval.in wird ja heftig genutzt ich habe den Link hier erhalten: https://eval.in/777766

          Kommentar


          • #6
            Zitat von protestix Beitrag anzeigen
            Suche beginnend mit Leerzeichen gefolgt von einem Komma


            Siehst du einen Unterschied?
            nein

            Kommentar


            • #7
              Ich schon,
              er hatte diesen String als Beispiel
              Code:
              ", blabla"
              da fehlt aber ein Leerzeichen davor, vielleicht meinte er ja auch Leerzeichen hinter Komma.

              Syntaktischer Fehler aufgrund von Schludrigkeit?

              Kommentar


              • #8
                naja, seine Codezeile ist eindeutig...

                Kommentar


                • #9
                  Ja, vor dem Komma war ein Leerzeichen. Ich habe grade nicht die Gelegenheit die Sache weiter zu testen. Mein Gedanke war halt, dass es direkt hieran liegt.

                  Kommentar


                  • #10
                    Zitat von phuck
                    Leider bringt diese Sequenz den Parser durcheinander,... Achja, der Parser ist PHP5, falls das hilft.
                    Von welchem "Parser" reden wir hier? Dann hat der ev. Bug.
                    The string "()()" is not palindrom but the String "())(" is.

                    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                    PHP.de Wissenssammlung | Kein Support per PN

                    Kommentar


                    • #11
                      PHP 5.3.6 um genau zu sein

                      Kommentar


                      • #12
                        Wie wäre es denn mal mit einem Update, deine Version ist ja schlappe 6 Jahre alt
                        Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

                        Kommentar


                        • #13
                          Wäre ein Versuch wert. Dann kann ich auch nochmal den Feher im Log posten, den ich grade nicht mehr im Kopf habe. Werde aber erst in 1,5 Wochen wieder was dazu sagen können, aktuell bin ich wo anders
                          Es ist ja auch nicht so, dass mein kleines Scriptchen nicht läuft, mir lässt es halt keine Ruhe, warum es ohne Leerzeichen vorm Komma fehlerfrei durchläuft (Log geprüft+ Script tut genau was es tun soll), aber mit Leerzeichen den Dienst quittiert.

                          Kommentar


                          • #14
                            Hallo phuck ,

                            du gibst erstens kein Textbeispiel, in dem du exakt nach ' , blabla' suchst.

                            Zum zweiten schreibst du auch nicht, wie du die Rückgabe von strpos auswertest. Siehe: http://php.net/manual/de/function.strpos.php

                            PHP-Code:
                            <?php
                            $text 
                            "Fischer's Fritz fischt, meistens nachts, seine frischen Fische.";
                            //Beispiel 1: Ohne Leerzeichen vor dem Komma
                            $finde1 ", meistens";
                            $pos strpos($text$finde1);
                            if(
                            $pos === false){
                             echo 
                            "Der Begriff '$finde1' wurde nicht gefunden.";
                            }else{
                               echo 
                            "Der Begriff '$finde1' beginnt an Pos '$pos'."//Es erfolgt diese Ausgabe
                               
                            }
                            echo 
                            "<p></p>";
                            //Beispiel 2: Mit Leerzeichen vor dem Komma
                            $finde2 " , meistens";
                            $pos strpos($text$finde2);
                            if(
                            $pos === false){
                             echo 
                            "Der Begriff '$finde2' wurde nicht gefunden."//Es erfolgt diese Ausgabe
                            }else{
                               echo 
                            "Der Begriff '$finde2' beginnt an Pos '$pos'.";
                               }
                            ?>
                            Du kannst jetzt im Code-Schnipsel unter Beispiel 1 den Suchtext ',meistens' zwar kürzen, dann würde dieser auch gefunden.

                            Sobald du aber mehr als ein Leerzeichen anhängst, würde auch der nicht gefunden, weil du dann nach ', meistens _____ ' suchen würdest, und diese Textstelle gibt es nicht,

                            genauso wenig wie es ' , meistens' mit führendem Leerzeichen vor dem Komma im Text nicht gibt.

                            Gruß
                            Günni

                            Kommentar

                            Lädt...
                            X