REGEX in Mysqli abfragen

  • Versuche in der Datenbank alle Nachrichten nach url's abzusuchen.

    Mit SELECT alles holen und dann nach url's abzusuchen wäre ja schwachsinnig, deswegen soll das das die Datenbank machen.


    Mein versuch sieht so aus

    ( $reg habe ich schon verschiedene regex probiert , nur keiner hatte ein Treffer )


    Code
     $reg='[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)';
    
     $query="SELECT `post_message` FROM `tabelle` WHERE `user` = '$user' AND `post_message` REGEXP '$reg'";

    Oder ist der Ansatz falsch ?

    Bekomme immer 0 Treffer ( auch bei anderen regex ) , aber keine Fehlermeldungen.

  • Ich bin mir nicht sicher, wie komplex MySQL mit Pattern umgehen kann, aber hier kann man sich reinlesen.

    Man sollte auch nie vergessen, dass die meisten DBMS nur Pattern unterstützen, meist aber keine komplexen regulären Ausdrücke.


    EDIT: Hier gehts auch nochmal ein bisschen weiter ins Thema

  • Danke erst mal, werde da mal kucken ob mich die Links weiter ans Ziel bringen.

    Hatte ja schon bei Google gesucht .

    Man findet ja eigentlich fast immer nee Lösung wenn man lang genug sucht, doch die Datenbank mit einen Regex zu durchsuchen werden die Lösungen weniger. Habe einiges gefunden wo man z.b Wörter mit 5 Zeichen , oder auch Postleitzahlen suchen kann, doch komplette Url's oder Emails oder so ist meine suche negativ geblieben.

    Meine versuche mit probieren hatte auch nicht geklappt.


    Werde dann mal kucken ob die Mysqli Seite mir weiter helfen kann.

  • Verstehe aber nicht:

    was das finden soll :D

    Ok, da hatte ich was falsches hier rein kopiert.

    Hatte aber geschrieben das ich mehrere versucht hatte. Goggle hatte da verschiedene zu auswahl, von lang bis kurzen.


    Probiere das jetzt nochmal mit deinen Query , mal sehen ob es dann klappt.


    Gibt es eigentlich bei den Datenbanken noch unterschiede ?

    Zb beim Server kann man ja über der ini und co noch so ein Paar sachen einstellen wen der Hoster das nicht gesperrt hat. Kann der Anbieter bei Datenbanken auch irgendwie bestimmte sachen sperren ?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!