Teil einer URL in HTML-Datei parsen..
Sebastian
- perl
0 Heizer
Hallo,
ich will derzeit ein kleines Script schreiben, welches aus einer downgeloadeten HTML-Datei einen bestimmten String sucht und als simple Variable abspeichert.
Ich möchte also eine Teil-URL aufsuchen, welche ich einer Variable übergebe. In der Teil-URL ist der Anfang immer genauso.. bis auf den letzten Teil, der individuelle Parameter besitzt.
.. also zum Beispiel: /eine/url/test.php?data=huhu
.. oder /eine/url/test.php?id=mami
.. und so weiter.. er soll praktisch immer das Muster /eine/url/test.php finden.. aber auch den Rest der URL mit parsen, der immer unterschiedlich ist.
Der Parser soll sozusagen nach einer Schablone suchen, die einem bestimmten URL-Grundmuster entspricht.. und soll mir die exakte URL als Variable abspeichern, damit ich dann den Inhalt mit einer 2. Variablen vergleichen kann.
In meiner konkreten Anwendung kommen in einer Datei mehrere dieser URL vor. ich möchte aber, daß er nur die erste extrahiert, die er findet.
Ich will also in beiden HTML-Dateien nur den ersten zutreffenden Link vergleichen.. der Rest soll ignoriert werden.
Kann mir da einer weiterhelfen?
Was du brauchst sind Reguläre ausdrücke, also z.B.
(eine/url/test.php)?([a-zA-Z0-9]+)=([a-zA-Z0-9]+)
Da bekommst du vier ergebnisse zurück:
0: Gesammter String
1: feststehender Teil der URL
2: Name der GET-Variable
3: Wert der GET-Variable
In PHP findet die Funktion preg_match() nur das erste Vorkommnis (im Gegensatz zu preg_match_all() ), aber wie das bei Perl ist weiß ich nicht.
Grüße
Heizer