preg_match() erstes Element / kompletten Treffer unterbinden?

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

  • preg_match() erstes Element / kompletten Treffer unterbinden?

    Hi,

    ist es möglich den kompletten Treffer nicht in das $matches-Array zu übergeben?

    Also Index 0 soll NICHT mit ausgegeben werden.

    Gruß
    Marc
    mein Honda Forum | meine Scripte

  • #2
    Ja, du musst dir einen eigenen Parser schreiben

    Darf man fragen, was es dir schadet?

    Kommentar


    • #3
      Meinem Arbeitsspeicher

      Ich arbeite mit preg_match_all() und im Ergebnis landen ziemlich viele Ergebnisse, die ich auch alle brauche bis auf den Haupttreffer. Der ist unnütz.
      mein Honda Forum | meine Scripte

      Kommentar


      • #4
        *doppel*
        mein Honda Forum | meine Scripte

        Kommentar


        • #5
          ich weiss zwar nicht, warum dich der eintrag nervt, aber du willst die anderen treffer doch sicher in einer for-schleife verarbeiten. dann setz doch dort den anfangswert auf 1 und nicht auf 0.

          peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar


          • #6
            Zitat von Kropff Beitrag anzeigen
            ich weiss zwar nicht, warum dich der eintrag nervt
            Das steht in meinem 2. Beitrag.
            mein Honda Forum | meine Scripte

            Kommentar


            • #7
              Oder array_shift & wegwerfen ...
              Löst aber alles natürlich keine Speicherplatzprobleme, die evtl. beim matchen schon auftreten.

              Dass du den kompletten Treffer als 0tes Element bekommst, kannst du AFAIK nicht verhindern - das ist bei preg quasi "build-in".
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Zitat von wahsaga Beitrag anzeigen
                Dass du den kompletten Treffer als 0tes Element bekommst, kannst du AFAIK nicht verhindern - das ist bei preg quasi "build-in".
                Das wollte ich wissen. Was ich danach mit dem Array mache, bringt mich nicht weiter, weil die Ergebnisse durch eine Schleife laufen und dann immer wieder aufs neue gefüllt werden und dann wieder nur unnötig eine weitere Funktion einen Löschvorgang ausführt. Auch wenn ich mit unset() arbeiten würde, würde es also nichts bringen, da der Speicher dann schon zugewiesen wurde und die Schleife selber nicht besonders umfangreich ist.

                Also ich kann auch einfach nach der Schleife das Array löschen. Mache ich aber nicht, weil ich alle temporären Arrays möglichst auf eins reduziert habe um die Definitionstabelle zu entlasten.
                mein Honda Forum | meine Scripte

                Kommentar


                • #9
                  Zitat von mgutt Beitrag anzeigen
                  Hi,

                  ist es möglich den kompletten Treffer nicht in das $matches-Array zu übergeben?

                  Also Index 0 soll NICHT mit ausgegeben werden.
                  Den Eintrag Null im Treffer-Array bekommst du natürlich nicht weg. Aber möglicherweise kann man den RegEx so umschreiben, dass die erfassten Treffer kürzer werden. Also zeig mal dein Suchmuster her.

                  Nebenbei könntest du statt preg_match_all() auch einfach preg_match() in einer weiteren Schleife verwenden.
                  Zuletzt geändert von fireweasel; 20.06.2009, 23:58.
                  Klingon function calls do not have “parameters”‒they have “arguments”‒and they always win them!

                  Kommentar


                  • #10
                    PHP-Code:
                    preg_match($pattern$matches[0], $matches); 

                    Kommentar


                    • #11
                      PHP-Code:
                      array_shift($matches
                      so würde ich es einfach machen
                      Edit: Oh ganz deinen Post übersehen das du preg_match_all und nicht preg_match benutzt, da wirst du fürchte ich um eine schleife nicht herum kommen
                      Zuletzt geändert von Forsaken; 22.06.2009, 20:35.
                      IM: Pidgin | Browser: Chromium Firefox | HTML: SelfHTML | PHP: PHP.net SelfPHP | Linux: GnomeDo



                      And remember, respect is everything!

                      Kommentar

                      Lädt...
                      X