[REGEX] Riesenproblem brauche varieabelen Wildcard

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [REGEX] Riesenproblem brauche varieabelen Wildcard

    Hallo

    ich habe ein Riesenproblem. Bei dem ich einfach nicht den passenden Regex finde.



    Ich habe in einem String eine Zeichenkette die folgendermaßen aussieht: file(hier sind variable daten)#
    Also z.B. file://C:/tralala/hopsasa/pferd#4 oder file://d:hierdadort#16

    Jetzt soll mit ereg_replace alles was zwischen dem file und dem # steht einfach weggekürzt werden, so dass nur noch #4 oder #15 usw. über bleibt.

    Warum das ganze?

    Über ein Formular gibt jemand einen Seitentitel ein und einen Teil eines HTML-Quelltextes.
    Beides wird in einer DB gespeichert. In dem Quelltext sind aber o.g. Links in unterschiedlichen Formen enthalten. Diese sollen beim Anzeigen der DB herausgekürzt werden, so dass nur noch die Anker über bleiben.

    Bsp: Teil eines Quelltext, in der DB

    ...
    <LI><A
    href="file:///C:/Eigene%20Dateien/Sabines%20Kochrezepte/Pastasammlung%202.htm#145"><FONT
    face="Comic Sans MS" color=orange
    size=4>Zucchiniauflauf</FONT></A><BR></LI></UL></LI></UL><A name=1>
    <H1><FONT face="Comic Sans MS" color=orange size=4>Pastasammlung Teil
    2</FONT></H1>
    <UL>
    <LI><A name=2>
    <H2><FONT face="Comic Sans MS" color=orange size=4>Ravioli </FONT></H2>
    <UL>
    <LI><A name=3>
    <H3><FONT face="Comic Sans MS" color=orange>1. Muschelfüllung
    </FONT></H3><FONT face="Comic Sans MS" color=orange size=4>20 Muscheln
    <BR>20 Krabben <BR>Petersilie gehackt <BR>Saft von 1/2 Zitrone
    <BR>Salz
    ...

    Daraus soll dann in der Anzeige werden:

    ...
    <LI><A
    href="#145"><FONT
    face="Comic Sans MS" color=orange
    ...

    Allerdings wie bereits geschrieben tauchen diese Links öfter und in versch. Formen auf.

    Mein Script zur Anzeige sieht dann bisher so aus:

    PHP-Code:
    <?php

    // Auselesen des gewählten Datensatzes

    include("dbconnect.php");
    $abfrage "SELECT content FROM cms WHERE id=$auswahl";
    $query mysql_query($abfrage);
    $ausgabe mysql_fetch_object($query);
    $inhalt $ausgabe->content;

    // Stringbearbeitung

    $inhalt ereg_replace("Hier klemmt es leider","#",$inhalt);

    // Ausgabe

    include("header.php");
    echo 
    "$inhalt";
    include (
    "footer.php");

    ?>
    Da "wo Hier klemmt es leider" steht muss halt die Abfrage hin, und da komme ich nicht weiter :/

    Gruß,

    Docoboti

  • #2
    schau dir mal die stringfunktionen an:
    strpos()
    substr()
    Kissolino.com

    Kommentar


    • #3
      PHP-Code:
      $text preg_replace('%href="(.*)#(.*)"%siU''href="#$2"'$text); 
      so?

      aber variabel is das muster beim besten willen nich
      Ich denke, also bin ich. - Einige sind trotzdem...

      Kommentar


      • #4
        kann es sein dass du deinen nutzern nur die möglichkeit geben willst verschiedene anker zu verlinken ?
        da genügt ein href="#anker" ..
        die browser sollten die aktuelle datei heranziehen und einfach zum neuen anker springen ..
        mfg,
        [color=#0080c0]Coragon[/color]

        Kommentar

        Lädt...
        X