Possible Duplicate:
Best methods to parse HTML
How can I parse HTML code held in a PHP variable if it something like:
<h1>T1</h1>Lorem ipsum.<h1>T2</h1>The quick red fox...<h1>T3</h1>... jumps over the lazy brown FROG!
I want to only get the text that's between the headings and I understand that it's not a good idea to use Regular Expressions.
Use PHP Document Object Model:
<?php $str = '<h1>T1</h1>Lorem ipsum.<h1>T2</h1>The quick red fox...<h1>T3</h1>... jumps over the lazy brown FROG'; $DOM = new DOMDocument; $DOM->loadHTML($str); //get all H1 $items = $DOM->getElementsByTagName('h1'); //display all H1 text for ($i = 0; $i < $items->length; $i++) echo $items->item($i)->nodeValue . "<br/>"; ?>
This outputs as:
T1 T2 T3
[EDIT]: After OP Clarification:
If you want the content like Lorem ipsum. etc, you can directly use this regex:
<?php $str = '<h1>T1</h1>Lorem ipsum.<h1>T2</h1>The quick red fox...<h1>T3</h1>... jumps over the lazy brown FROG'; echo preg_replace("#<h1.*?>.*?</h1>#", "", $str); ?>
this outputs:
Lorem ipsum.The quick red fox...... jumps over the lazy brown FROG
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With