Also ich bin eher ein Neueinsteiger in Sachen Regular Expressions. Deshalb wäre ich für einen kleinen Tipp sehr dankbar :).
Mein Problem:
Ich will aus folgendem html-code ein bestimmtes Stück herrausfiltern:
[code=html]
<html><head></head><body><table><tr><td><a href="test.html">test</a></td></tr><tr><td bgcolor="#ffffff"><a href="test2.html?p=1">test</a></td></tr><tr><td bgcolor="#dddddd"><a style="color:red;" href="test2.html?p=2">test</a></td></tr></table></body></html>
[/code]
(Der Code enthält keine Zeilenumbrüche)
und ich möchte einige Teile herrausfiltern, undzwar:
beginnend mit einem "<tr>" und endend mit einem "</tr>". Innerhalb dieser "Begrenzung" soll in dem Link "test2.html" vorkommen.
Also in diesem Beispiel sollen folgende Teile gefunden werden:
[code=html]
<tr><td bgcolor="#ffffff"><a href="test2.html?p=1">test</a></td></tr><tr>
[/code]
und
[code=html]
<tr><td bgcolor="#dddddd"><a style="color:red;" href="test2.html?p=2">test</a></td></tr>
[/code]
Ich habe auch schon einen ersten Ansatz eines Suchmusters:
suchmuster = "/<tr>.*test2.html.*</tr>/i";
Allerdings bekomme ich dabei immer einen viel zu großen Abschnitt:
[code=html]
<tr><td><a href="test.html">test</a></td></tr><tr><td bgcolor="#ffffff"><a href="test2.html?p=1">test</a></td></tr><tr><td bgcolor="#dddddd"><a style="color:red;" href="test2.html?p=2">test</a></td></tr>
[/code]
Also quasi das allererste "<tr>" bis zum allerletzten "</tr>".
Tjoa, das ist jetzt sozusagen meine Frage: Wie bekomm ich das, was ich finden will und nicht so viel :)
Greetz, Tim.