Zwischen <h1> und </h1> String ermitteln

  • Themenstarter Themenstarter joky_joky
  • Beginndatum Beginndatum
J

joky_joky

Hallo ich bräuchte mal wieder ein wenig Hilfe.

Also ich möchte eine html Datei durchsuchen und alle Überschriften also alles was zwischen <h1> bis </h1> steht ausgeben.
Der inhalt also die Überschrift soll dann in einem Textfeld angezeigt werden.
Wie bekomme ich jetzt das dazwischen heraus ohne z.B.

HTML:
<h1><em><font color="#FF9900">Hallo ich bin die Ueberschrift</font></em></h1>

bei so einer Überschrift die Schriftfarbe und das Kursive zu verliehren.

Habe es mal so probiert

PHP:
preg_match("!\<strong\>(.*?)\<\/strong\>!", "<strong><em>Hallo ich bin die Ueberschrift</em></strong>", $treffer);

aber das führt mich nicht zu meinem gewünschten ergebnis.



MfG
Joky_Joky
 
Nur die verwendeten Begrenzer innerhalb des regulären Ausdrucks müssen maskiert werden.
Code:
!<strong>(.*?)</strong>!
Wieso arbeitest du nicht mit CSS?
 
Probier mal folgendes
PHP:
<?php
$str = '<h1><em>Blablubb</em></h1> textext <h1><i>Bla</i></h1>';
preg_match_all("~<h1>(.+)\</h1>~iU", $str, $matches, PREG_SET_ORDER);  

foreach($matches as $match)
{
	echo 'Überschrift: ' . $match[1] . '<br />';
}
?>
Wobei in deinem Fall in $str der Inhalt der HTML-Datei steht (z.B. per [phpf]file_get_contents[/phpf] einlesen).
 
Zurück