Stringből string kinyerése két string között :P
Sziasztok!
Egy HTML file tartalmát beolvastam file_get_contents-cel egy - mondjuk - $html_file változóba. Tökéletesen működik, a változó ugye így néz ki:
<html>
<head>
...
</head>
<body>
...
<div id="ez_a_lenyeg">
<p>Itt a szöveg, amit szeretnék kinyerni</p>
<p>Meg itt</p>
<p>Meg még mondjuk itt is :)</p>
<div>
<p>itt is van egy div, tehát van még egy lezáró div tag</p>
</div>
</div>
<div id="ez_is_egyedi_id">
...
</div>
...
</body>
</html>
A feladat az, hogy egy string-be szeretném kinyerni a '<div id="ez_a_lenyeg">' és az azt bezáró '</div>' szövegek közötti tartalmat.
Nehezíti a feladatot, hogy div van a div-ben, így a '</div>' többször is előfordul, viszont a nekem szükséges '</div>' után van egy egyedi azonosítójú divem, amivel esetleg lehet operálni.
Nem tudom, ez mennyire érthető így, illetve, hogy mennyire láma kérdés, én Guglin nem találtam semmi használhatót. :S
Előre is köszi!
■ Egy HTML file tartalmát beolvastam file_get_contents-cel egy - mondjuk - $html_file változóba. Tökéletesen működik, a változó ugye így néz ki:
<html>
<head>
...
</head>
<body>
...
<div id="ez_a_lenyeg">
<p>Itt a szöveg, amit szeretnék kinyerni</p>
<p>Meg itt</p>
<p>Meg még mondjuk itt is :)</p>
<div>
<p>itt is van egy div, tehát van még egy lezáró div tag</p>
</div>
</div>
<div id="ez_is_egyedi_id">
...
</div>
...
</body>
</html>
A feladat az, hogy egy string-be szeretném kinyerni a '<div id="ez_a_lenyeg">' és az azt bezáró '</div>' szövegek közötti tartalmat.
Nehezíti a feladatot, hogy div van a div-ben, így a '</div>' többször is előfordul, viszont a nekem szükséges '</div>' után van egy egyedi azonosítójú divem, amivel esetleg lehet operálni.
Nem tudom, ez mennyire érthető így, illetve, hogy mennyire láma kérdés, én Guglin nem találtam semmi használhatót. :S
Előre is köszi!
Reguláris kifejezések, HTML parser
DOMDocument
A megoldás
A problémát a PHP Simple HTML DOM-mal sikerült megoldani végül.
A manual elég részletes, minden benne van: http://simplehtmldom.sourceforge.net/manual.htm
A többieknek köszönöm szépen a segítséget!