Pedda: html parsen - tags löschen

Hallo zusammen,

ich bekomme für meine PHP-seite jede Menge HTML-Code als String geliefert, den ich "nur noch" parsen muss.
Das ist nicht das Problem, nur hab ich Bereiche dazwischen, die ich komplett löschen möchte.
Besteht eine Möglichkeit, dass ich alles was zwischen "<b>" und </b>" steht lösche ?
Mit str_replace krieg ich zwar die tags weg, aber nicht das was dazwischen steht...
Mit strpos kann ich nicht nach "<b>"/"</b>" suchen....
Irgendwie steh ich grad (mal wieder) aufm Schlauch !?
Wäre nett, wenn mir einer von euch hier weiterhelfen könnte !

Thnx

Pedda

  1. Hallo Pedda.

    Mit str_replace krieg ich zwar die tags weg, aber nicht das was dazwischen steht...

    Dafür gibt es ja auch preg_replace().
    Mit ein bisschen Wissen über reguläre Ausdrücke kannst du damit eine Menge bewirken.

    Gruß, Ashura

    --
    Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
    Try it: Become an Opera Lover in 30 days
    Meine Browser: Opera 8.0 | Firefox 1.0.4 | Lynx 2.8.3 | Netscape 4.7 | IE 6.0
    IE Layout-Workaround №1: <!--[if IE]><style type="text/css">*{display:none;}</style><![endif]-->
    1. Hallo Ashura,

      Besten Dank für die Antwort, aber irgendwie kann ich damit leider nicht so richtig viel anfangen :(

      Der Text zwischen den <b>s und </b>s variiert ja, und wenn ich das richtig verstanden habe, kommt auch "preg-replace" damit nicht klar !?

      Ich steh also nach wie vor auf dem berühmten Schlauch :(

      Gruss Pedda

      1. Hallo Pedda.

        Der Text zwischen den <b>s und </b>s variiert ja, und wenn ich das richtig verstanden habe, kommt auch "preg-replace" damit nicht klar !?

        Dafür kannst du ja schreiben:

        preg_replace("!<b>.*</b>!","<b></b>", "Dein String mit <b>Text</b>");

        Falls du bisher noch nie mit regulären Ausdrücken gearbeitet haben solltest, kann ich dir diese Seite ans Herz legen.

        Gruß, Ashura

        --
        Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
        Try it: Become an Opera Lover in 30 days
        Meine Browser: Opera 8.0 | Firefox 1.0.4 | Lynx 2.8.3 | Netscape 4.7 | IE 6.0
        IE Layout-Workaround №1: <!--[if IE]><style type="text/css">*{display:none;}</style><![endif]-->
        1. Umpfh !

          Danke *g*

        2. Hallo Pedda.

          Der Text zwischen den <b>s und </b>s variiert ja, und wenn ich das richtig verstanden habe, kommt auch "preg-replace" damit nicht klar !?

          Dafür kannst du ja schreiben:

          preg_replace("!<b>.*</b>!","<b></b>", "Dein String mit <b>Text</b>");

          $zeile=eregi_replace( "<b[^>]*>", "", $zeile);
          und dann noch das <b> löschen

          Grüße

          Rod

          Falls du bisher noch nie mit regulären Ausdrücken gearbeitet haben solltest, kann ich dir diese Seite ans Herz legen.

          Gruß, Ashura

          1. $zeile=eregi_replace( "<b[^>]*>", "", $zeile);
            und dann noch das <b> löschen

            Ich meinte das </b> ;-)

          2. Hallo Rod.

            und dann noch das <b> löschen

            Gerade das wollte Pedda aber nicht:

            Besteht eine Möglichkeit, dass ich alles was zwischen "<b>" und </b>" steht lösche ?

            Gruß, Ashura

            --
            Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
            Try it: Become an Opera Lover in 30 days
            Meine Browser: Opera 8.0 | Firefox 1.0.4 | Lynx 2.8.3 | Netscape 4.7 | IE 6.0
            IE Layout-Workaround №1: <!--[if IE]><style type="text/css">*{display:none;}</style><![endif]-->