phpbar.de logo

Mailinglisten-Archive

[php] Re: Problem mit Regulaeren Ausdruecken

[php] Re: Problem mit Regulaeren Ausdruecken

Whiteman whiteman_(at)_teg-clan.de
Mon, 8 May 2000 15:01:39 +0200


----- Original Message -----
From: "Steffen Sander" <s.sander_(at)_crs.de>
To: <php_(at)_php-center.de>
Sent: Monday, May 08, 2000 3:47 PM
Subject: [php] Re: Problem mit Regulaeren Ausdruecken
> Versuche es mal so anzugehen ( zu formulieren ):
> 1. Du suchst eine Zeichenkette die mit <a[[:space:]]+
> ( Linkanfang und min. ein (Leerzeichen, Tab oder Zeilenumbruch)
beginnt
> und mit einem </a> endet. Stimmts?! Dazwischen darf aber
> kein <a[[:space:]] und auch kein </a> vorkommen !!
> ( Siehe Deine gefundene Zeichenkette oben.)
> 2. Mit dieser gefundenen Zeichenkette kannst Du jetzt die
Anfangsposition und
> die Menge der enthaltenen Zeichen ermitteln, um mit substr den übrigen
String
> zu extrahieren und nach weiteren Links zu durchsuchen.
> ( Schleife und Suchergebnisse in ein Array schreiben ).

HI

Also erstmal Danke.
Ich habe hier ne andere Lösung gefunden.
Für die die es interessiert:
$test = "<a href=\"http://www.domain.de/news.php3\">News</a> blah blah
<a href='http://www.domain.de/'>Link 2</a>";
while (preg_match("/(?i)<a href=['\"](\S+)['|\"].*?>(.*?)<\/a>/", $test,
$test1))

$test1[0] = preg_quote($test1[0]);
$test = ereg_replace( $test1[0], "Link geaendert", $test);

Das funtkioniert nun super. Mann kann den Link jetzt abändern wie mann
will
Das gefundene Ergebniss steht in $test1[0] die URL in $test1[1] und der
Name des Links in $test1[2]

cu
Stephan

















php::bar PHP Wiki   -   Listenarchive