Mailinglisten-Archive |
----- 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