preg_match_all til at hente data fra fil men mangler lidt hjælp
HejJeg er ikke stærk i reg ex, men har fundet frem til følgende nedenstående.
Det skal lige siges at mit ønske, er at få fat i data der er imellem x og y, eksempelvis alt data imellem <div class="test"> og </div>
$search_string = file_get_contents("test.txt");
$find_first = "<div class=\"test\"";
$find_last = "<\/div";
preg_match_all("/$find_first.*?>($find_last.*?).*?>/si", $search_string, $result, PREG_PATTERN_ORDER);
foreach ($result as $value) {
for ($i=0;$i<=count($value);$i++) {
echo format_content($value[$i]);
}
}
Men jeg får ikke KUN det data jeg vil have, jeg får noget ekstra med, som jeg gerne vil undgå. Et eksempel på hvad der kommer med.
<div class="test">
her er en tekst<br />
her er en tekst<br />
her er en tekst<br />
her er en tekst<br />
her er en tekst<br />
</div>
</div>
<div class="test-tekst">
<div class="test-tekst-nr"><p align="right">2</p></div>
<div class="test">
her er en tekst<br />
her er en tekst<br />
her er en tekst<br />
</div>
</div>
Altså i ovenstående eksempel får jeg alt dette ekstra med jeg ikke ønsker:
</div>
<div class="test-tekst">
<div class="test-tekst-nr"><p align="right">2</p></div>
Jeg håber at det lyder forståeligt og nogen kan hjælpe med at rette min regex til noget der bedre funker, tak.
