Antwort
 
Themen-Optionen Thema durchsuchen
Alt 21.09.2006, 20:22 Nach oben    #1
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 540
Standard [RegEx] HTML-Links erkennen

Ich möchte aus einem HTML-Quellcode alle links herausfiltern. Als Regex hab ich folgendes:
Code:
/<a\s+href="(.+?)"(\s.*?)?>(.*?)</a>/
dieses pattern findet alle a-tags und die href-attribute. weitere attribute sind so nur nach dem href-attribute möglich. um auch links zu finden, bei denen das href-tag nicht als erstes steht, hab ich folgendes hinzugefügt:
Code:
/<a(\s.+?)?\s+href="(.+?)"(\s.*?)?>(.*?)</a>/
aber dummerweise ist dieses erste subpattern trotz ? nach dem multiplikator gierig...
beispiel
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.09.2006, 20:38 Nach oben    #2
Jonas
 
Benutzerbild von Artemis
 
Registriert seit: 03.06.2006
Beiträge: 244
Standard

Habs ein bisschen getestet, und dieser hier geht:
Code:
<a (.*?)href="([^"]*)"(.*?)>(.*?)</a>
__________________
Applikations-Programmierung:
BlitzMax, BlitzPlus

Webentwicklung:
PHP, (X)HTML, CSS, JavaScript, MySQL



Geändert von Artemis (22.09.2006 um 20:43 Uhr)
Artemis ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.09.2006, 23:11 Nach oben    #3
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 540
Standard

ja, schon, aber der würde z.b auch <a fakehref="xxx>xxx</a> finden, weil da vor dem href kein leerzeichen sein muss.
natürlich gibt es keine anderes attribut, dass auf href endet, aber ich versuche halt irgendwie eine lösung zu finden, die "optimal" ist. müsste es ja eigentlich geben...
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.09.2006, 17:03 Nach oben    #4
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.203
Standard

dann mach ne leerstelle vors href ? btw erkennt man mittels dem teil hier :

Zitat:
<a (.*?)href="([^"]*)"(.*?)>(.*?)</a>
nur "valide" Links, also schauen ob es bei was internem eingesetzt wird, wo man sich eines sauberen quelcodes sicher sein kann, oder ob es sich z.b. um ne art spider handelt die auch andere seiten aufrufen soll.

mfg
robo47
robo47 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.09.2006, 19:02 Nach oben    #5
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 540
Standard

die leerstelle hab ich ja gemacht, aber das funktioniert nicht...

".+?" sollte den selben effekt wie "[^"]" haben.
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
links im dokument robo47 HTML, XML und CSS 19 04.05.2006 15:09
HTML in HTML einbinden mr1st HTML, XML und CSS 3 14.01.2006 16:19
include -> html -> php/html Julied64 PHP-Programmierung 2 03.09.2005 12:35
TextArea + HTML?? debian inside Desktop-Applikationen und Grafik 16 18.05.2005 11:43
HTML Code im Frame darstellen ? tuxsymptom Desktop-Applikationen und Grafik 5 03.01.2005 19:42


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:28 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45