regex php: hier finden Sie alles, was im div

Ich versuche zu finden eveything innerhalb eines div mit regexp. Ich bin mir bewusst, dass es wahrscheinlich ist ein intelligenter Weg, dies zu tun - aber ich habe entschieden regexp.

so derzeit meine regexp-pattern sieht wie folgt aus:

$gallery_pattern = '/<div class="gallery">([\s\S]*)<\/div>/';  

Und es funktioniert der trick - etwas.

Das problem ist, wenn ich zwei divs nach jedem anderen - wie diese.

<div class="gallery">text to extract here</div>
<div class="gallery">text to extract from here as well</div>

Möchte ich für das extrahieren der Informationen aus den beiden divs, aber mein problem beim testen ist, dass ich nicht immer den text zwischen als Ergebnis sondern:

"text to extract here </div>  
<div class="gallery">text to extract from here as well"

Also zu summieren. Es überspringt die ersten Ende der div. und weiter zum nächsten.
Der text innerhalb des div enthalten kann <, / und Zeilenumbrüche. nur damit Sie wissen!

Hat jemand eine einfache Lösung für dieses problem? Ich bin immer noch ein regexp-Neuling.

Ich habe das gleiche zu diskutieren w/ mein Freund vor einigen Wochen. Das problem ist, wenn Sie tags wie diese "<div class="gallery">text<div>anderer text</div></div>", es ist schwer zu machen, den Ausdruck nicht auf den ersten </div>

InformationsquelleAutor Fifth-Edition | 2009-08-29

Schreibe einen Kommentar