Hallo Nachtwesen.
Ich lese mich nun seit Stunden in Regexp ein und ich muss sagen: Das ist mir zu hoch, ich steige durch diese "Logik" einfach noch nicht durch.
Woran hapert es denn? Hast du das vorzügliche Tut beim RegExp-Evaluator studiert?
Es geht sich um …
Paul, bist du es?
… die Links in einer HTML Datei welche ich in PHP einlese. Diese Links haben das Format:
<A HREF="http://www.avatomatic.de/" ADD_DATE="851377089" LAST_VISIT="1172694273" LAST_MODIFIED="851377011" ICON="data:" LAST_CHARSET="ISO-8859-1" ID="rdf:#$pTP7.">Avat-O-Matic</A>
Ich benötige nun nur den Link ansich und den Titel, also
[1] http://www.avatomatic.de/
[2] Avat-O-Matic
Ein mögliches Pattern zum Extrahieren könnte so aussehen:
!<A.*HREF="([^"]+)"[^>]*>([^<]+)</A>!is
Zur Erläuterung:
! - Aus dem Pool der erlaubten Delimiter gewählt
<A - Die wortwörtliche Zeichenkette „<A“
.* - Irgendetwas, beliebig oft
HREF=" - Die Zeichenkette „HREF="“
( - Öffnende erste Kapselung für das Linkziel
[^"]+ - Irgendetwas außer „"“, mindestens einmal aber auch beliebig oft
) - Schließende erst Kapselung
" - Das Zeichen „"“
[^>]* - Irgendetwas außer „>“, beliebig oft
- Das Zeichen „>“
( - Öffnende zweite Kapselung für den Linktext
[^<]+ - Irgendetwas außer „<“, mindetens einmal aber auch beliebig oft
) - Schleißende zweite Kapselung
</A> - Die Zeichenkette „</A>“
i - Case Insensitive, Groß- Kleinschreibung also ignorieren
s - Auch Zeilenumbrüche erlauben
Einen schönen Freitag noch.
Gruß, Mathias
ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
debian/rules