RegEx-Hilfe Nur BODY einer HTML ausgeben

Act of Fate

Erfahrenes Mitglied
Guten Tag,

ich habe hier mehrere HTML-Dateien, wo ich per RegEx nur den Body extrahieren möchte. Meine HTML sieht so aus:

Code:
||CUT|||
<html>
<head>
<title>Inhalt</title>
<link rel=stylesheet type="text/css" href="data/smarty.css"> 
</head>

<body>
<table border=0 cellspacing=0 cellpadding=0>
  <tr>
    <td valign=top>
		<img src="data/LogoLeft.gif">
	</td>
	<td valign=top>
		<img src="data/LogoHaupt.gif">
	</td>
	<td valign=top>
		<img src="data/Logoright.gif">
	</td>
  </tr>
</table>||CUT||
<h2>Haupt-Inhaltsverzeichnis</h2>


Ich möchte nun ab <html> und dann bis zum 1.Vorkommen eines </table> alles Cutten, um die obere Navi abzuschneiden.

Ich kann zwar mit RegEx umgehen und habe schon ein paar erfolgreiche hinter mir, nur diesmal solls nicht sein.

Vielen Dank für Hilfe....
 
Ich persönlich habe zwar noch nie mit RegEX gearbeitet, benutze für sowas aber Stringfunktionen - lass mich überlegen, war irgenwas mit substr und strpos!
 
Mit strpos und substr() wäre es recht einfach.

Arbeitest du mit smarty oder hast du deine CSS einfach nur so smarty.css benannt? Denn wenn du mit smarty arbeiten willst kann man das Menü auch eleganter kapseln oder auslesen.

$menu = substr($htmldaten,0,strpos($htmldaten,'</table>')-1);
 
Irgendwie funktioniert das nicht so ganz, ich möchte nur bis

Code:
<h2>Titel</h2>

alles entfernen, hat evtl. noch jemand eine Idee. Oder wie bekommt man es in einem RegEX hin, dass bis <img src="meinbild.gif"></td></tr></table> auch neue Zeilen wegfetzt?


Vielen Dank
 
Achso also anderrum, du willst den Rest ab (einschliesslich) <h2> haben?

Dann eben so

$rest = substr($htmldaten,strpos('<h2>'));
 
Ok,Danke! War mein Fehler, ich habe völlig die strpos- und substr- Funktionen vergessen und einen zu komplizierten Weg gewählt. Zu dumm!
 
Zurück