suit: Bestimmten String finden

Beitrag lesen

Folgendes: Ich habe HTML-Code in einer MySQL-DB gespeichert. In diesem Code befinden sich Strings wie z.B. "<blabla.html>".

Nun möchte ich diese Strings herausfiltern um Sie weiterverarbeiten zu können, bloss wie mache ich das am Besten? Ich kann ja nach dem String "<" suchen, doch weiss ich nicht, was nach diesem Part kommt. Wie kann ich nun am Besten nach dem gesamten String suchen? Also eine Funktion die nach dem "[link:" als Anfang sucht und dann alles bis zum ">" in eine Variable schreibt.

Was ist, wenn mehrfach in einem Datenfeld so etwas vorkommt? In der Ergebnismengen kannst du das nicht aufschlüsseln.

Eigentlich sollte es nicht so schwer sein, aber ich grad nen richtigen Knoten im Kopf.

Die zielführenste Lösung (MySQL-Erweiterungen zu nutzen, von denen ich jetzt keine wüsse, die das geforderte erfüllt) ist es, mit MySQL nur vorzusortieren:

Alles selektieren welches zumindest ein < und ein > enthält.

Diese Ergebnismenge wird dann mit PHP weiterbearbeitet und auf das tatsächliche Resultat zusammengefiltert.

btw: Die Links nach dem "link:" sind keine Fantasie-Geschichten, auch diese sind in einer Tabelle abgespeichert, aber ich möchte nicht den Tabellen-Inhalt Datensatz für Datensatz durchgehen und per String-Funktion mit dem Gesamttext abzugleichen. Das ist mir zuviel Traffic.

Siehe oben: wenn du alles holst, was < und > enthält hast du mit hoher wahrscheinlichkeit nur einträge, die dies auch tatsächlich beinhalten - zusätzlich kannst du das noch mit z.B. SUBSTR() eingrenzen, um den traffic zu verkleinern, damit PHP wirklich nur das notwendigste erhält.