Denkfehler bei PHP / regexp?

Dieses Thema im Forum "Ruby, php, Perl, Python ..." wurde erstellt von SirDodger, 28.11.2008.

  1. #1 SirDodger, 28.11.2008
    SirDodger

    SirDodger Matrixrunner

    Dabei seit:
    25.02.2006
    Beiträge:
    4
    Zustimmungen:
    0
    Ort:
    Hamburg
    Moin Moin!

    Ich habe ein Problem, an dem ich nun schon seit 2 Tagen sitze und ich langsam kein Land mehr sehe... :-(

    Ich habe einen 130k großen HTML-Text, in dem ca. 50 Links drinstehen, die zu 80% eine falsche Syntax haben. (Weniger die Syntax, aber der Aufbau der QueryStrings hat sich geändert.

    Jetzt wollte ich mir mit PHP eine Funktion zusammenbauen, die alle diese Links in ein Array pumpt, damit ich die dann umschreiben kann und anschliesend ein REPLACE auf die DB loszulassen ...

    Aber so langsam gehen mir die Ideen aus und der fitteste in regexp bin ich - ehrlich gesagt - auch nicht. :-(

    Kann mir vielleicht jemand unterstützend zur Seite stehen?

    Gruß,
    Bodo
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 noreaga, 28.11.2008
    Zuletzt bearbeitet: 28.11.2008
    noreaga

    noreaga Eroberer

    Dabei seit:
    07.10.2005
    Beiträge:
    64
    Zustimmungen:
    0
    also ohne garantie.... ja:

    Code:
     preg_match_all('/href=\"[a-zA-Z0-9\.\/_\-\"\:\?\=\&]*/i',$code,$things);
    
    anschließend sollte man nochmal über das array iterieren und die href=" dingens abtrennen.

    hab den für nen php spider verwendet, und der funktioniert eigentlich ganz gut. Mag sein, dass er aber nicht auf alle Links passt. Also er ist bestimmt nicht RFC Konform ;) aber n versuch ists wert
     
  4. #3 SirDodger, 28.11.2008
    SirDodger

    SirDodger Matrixrunner

    Dabei seit:
    25.02.2006
    Beiträge:
    4
    Zustimmungen:
    0
    Ort:
    Hamburg
    Danke dir!
    Werde ich gleich mal antesten! :-)

    Ich bin gerade über das hier gestolpert: http://www.the-art-of-web.com/php/parse-links/ ... das scheint auch ziemlich brauchbar für meine Zwecke zu sein. :)

    Ist ist Licht am Ende des Tunnels ...
     
  5. karru

    karru OSX'ler

    Dabei seit:
    02.05.2006
    Beiträge:
    338
    Zustimmungen:
    0
    Der Artikel ließt sich ziemlich nett. Schön, dass dort auf leerzeichen (um die = Zeichen) und auch auf singlequots/hochkommata geachtet wird.

    Alles in allem, sollte dich folgender Regex glücklich machen.
    Code:
    /<a\s[^>]*href\s*=\s*([\"\']??)([^\" >]*?)\\1[^>]*>(.*)<\/a>/siU
    Gruß
     
  6. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema: Denkfehler bei PHP / regexp?
Besucher kamen mit folgenden Suchen
  1. singlequots mysql code

Die Seite wird geladen...

Denkfehler bei PHP / regexp? - Ähnliche Themen

  1. Denkfehler, oder was? iptables Script-Problem

    Denkfehler, oder was? iptables Script-Problem: Hi Leute, Ich möchte gern einen Rechner mit ner Firewall schützen. Ich selbst möchte aber alle Port nach aussen offen haben. Führe ich das...
  2. Denkfehler beim Edit system

    Denkfehler beim Edit system: Das mit dem editen is ja alles ganz schön für die DB und so... aber im grunde ist da ein dnekfehler drin ... Wenn man im Forum einen eintrag...
  3. strncat() - Denkfehler

    strncat() - Denkfehler: Hallo, ich bin seit einigen Tagen dabei C zu lernen. Nun bin ich beim Thema Strings und der Funktion strncat() angelangt. Hier der Beispielcode...
  4. Kubuntu 6.06 - Denkfehler wegen Installieren?

    Kubuntu 6.06 - Denkfehler wegen Installieren?: Hallo Leute, vieleicht ist das jetzt die dämlichste Frage - aber ich kann es mir nicht erklären! Gibt es beim neuen Kubuntu 2 CD's? Also...
  5. Wo ist der Denkfehler - IF-Abfragen

    Wo ist der Denkfehler - IF-Abfragen: Hallo folgendes Skript is gegeben: ---------- #/bin/sh abfrage=$(ps -A | grep -o "[m]ysqld" | head -n1) read -p "MySql Daten in...