JochenT: Umbrüche und Vorschübe in Seitenquellcode mit PHP erkennen

Hallo
ich arbeite momentan an einem Script mit dem ich bestimmte Inhalte aus dem Quellcode einer Website parsen und anzeigen möchte.
Mein Problem dabei ist, dass teilweise Zeilenumbrüche und Tab-Vorschübe im Quellcode sind, von denen ich nicht weiß, wie ich sie beim Analysieren berücksichtigen kann.

Ein Beispiel dafür könnte so aussehen:

<div>
        Text1<br/>
        <br/>
</div>
Text2

Den Code lese ich - einfach beschrieben - folgendermaßen aus:

  
$code = file_get_contents("http://www.beispiel.com");  
echo htmlspecialchars($code);  

Als Test lasse ich mir nun einmal den Code anzeigen und sehe, dass der HTML code von oben dann etwa so aussieht: <div> Text1<br/> <br/> </div> Text2.

Wenn ich jetzt beim Parsen beispielsweise eine Stelle suche an der 2 <br/> Tags aufeinanderfolgen funktioniert das scheinbar nicht so ohne weiteres. Eine Suche nach "<br/> <br/>" bleibt ohne Ergebnis, da hinter dem ersten <br/> ja zunächst ein Umbruch und danach noch ein Vorschub erfolgt.

Meine Frage auf den Punkt gebracht also: Wie kann ich in so einem Beispiel die Umbrüche und Vorschübe beim Durchsuchen des Textes erkennen?

  1. Hi Jochen,

    $code = file_get_contents("http://www.beispiel.com");
    echo htmlspecialchars($code);

    
    > Meine Frage auf den Punkt gebracht also: Wie kann ich in so einem Beispiel die Umbrüche und Vorschübe beim Durchsuchen des Textes erkennen?  
      
    Mit einem regulären Ausdruck zwischen den beiden <br />-Tags: [ \t\r\n]  
      
    Beste Grüße  
    Fabienne
    
    1. Mit einem regulären Ausdruck zwischen den beiden <br />-Tags: [ \t\r\n]

      Zawinski dislikes this :p

      Wie wär es mit einem XML- oder HTML-Parser? SimpleXML, Simple HTML DOM usw.