alles ab bestimmten TAG entfernen

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

  • alles ab bestimmten TAG entfernen

    mal wieder preg_replace .... ich hab eine htmltext mit verschachtelten tabels der aus ner datenbank kommt der text endet gewöhnlich mit </table> aber manchmal kommt halt noch ein andere tag danach der da nicht hingehört -> ich möchte nun alles was hintern dem letztn </table> tag kommt entfernen. Die frage ist jetzt wie kann ich mit regulären ausdruck den letzten table tag bestimmen? oder solch ich gar nicht preg_replace benutzen?

  • #2
    haste schon einen Ansatz in code?
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      wenn da immer </table> steht is strrpos eventuell besser geeignet (in verbindung mit substr)
      Ich denke, also bin ich. - Einige sind trotzdem...

      Kommentar


      • #4
        ... nö.... ehrlich gesagt nicht! ich weiß nicht wie ich den letzten tag bestimmen kann? wenn ich grob weiß wie das geht kann ich selber frickeln .... aber immoment

        Kommentar


        • #5
          PHP-Code:
          $ende=strrpos($textausdatenbank'</table>');
          echo 
          substr($textausdatenbank0$ende); 
          probier das mal

          klappt allerdings nicht, wenn da mal </table> und mal </ table> steht, dann solltest du eventuell doch auf nen regulären ausdruck zurückgreifen
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            @mrhappiness

            -> ja ..... das ist ne gute möglichkeit aber was meinste mit

            wenn da immer </table>
            ist doch dann auch egal bei strpos und substr? dann findet er halt nix oder?

            EDIT:
            zu spät -> ne manchmal kann auch </TABLE> stehen

            Kommentar


            • #7
              mein code findet nur:
              Code:
              <table>
              ganz viel text
              </table>
              er findet _nicht_ zusätzlich:
              Code:
              <table>
              ganz viel text
              </ table>
              oder
              Code:
              <table>
              ganz viel text
              </ table >
              oder
              Code:
              <table>
              ganz viel text
              <  /   table                    >
              wenn sich das _nur_ in groß-KLEINschreib ung unterscheidet nehm strtolower
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                ah ja verstehe -> es gibt nur zwei cases </table> und </TABLE> wenn da mal ein < / tabl e > ist pech gehabt

                Kommentar


                • #9
                  s. o.
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    PHP-Code:
                    $ende=strrpos(strtolower($textausdatenbank), '</table>');
                    echo 
                    substr($textausdatenbank0$ende); 
                    so oder wat -> dann kann ich net machen! aber was ich machen kann </TABLE> in lowercase machen einfach mit replace!

                    aber saugeil wäre ne funktion die alle html tags to lower macht .... aber muß ja nicht sein ...

                    Kommentar


                    • #11
                      Original geschrieben von frank7l7
                      dann kann ich net machen!
                      warum?
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        ja weil doch auch normaler text zwischen den tags ist, den würd ich ja dann auch to lower machen

                        Kommentar


                        • #13
                          Original geschrieben von frank7l7
                          ja weil doch auch normaler text zwischen den tags ist, den würd ich ja dann auch to lower machen
                          na und?

                          dann wendest du strtolower halt nur auf das argument von strpos an,

                          strpos( ... strtolower($deintextstring) ...)

                          damit hast du dann die position, egal ob table nun gross oder klein geschrieben ist.

                          anschliessend schneidest du $deinstring an der richtigen stelle ab - der inhalt dieser variablen ist ja immer noch unverändert.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            Original geschrieben von frank7l7
                            ja weil doch auch normaler text zwischen den tags ist, den würd ich ja dann auch to lower machen
                            PHP-Code:
                            $ende=strrpos(strtolower($textausdatenbank), '</table>');
                            echo 
                            substr($textausdatenbank0$ende); 
                            halte ich für ein gerücht
                            bei dem code wird $textausdatenbank doch nirgends verändert, oder?
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              MAN BIN ICH BLIND ..... ARHHRRARRRRR ....... ok hab ne runde mit mir selber geschimpft -> ne is klar jetzt so mach ichs

                              danke

                              Kommentar

                              Lädt...
                              X