Turtle: regulärer Ausdruck

Hallo Leute,

ich scheitere gerade an der Formulierung eines regulären Ausdrucks.
Alle Versuche waren bisher ergebnislos und ich komme nicht mehr weiter.Abgesehen davon habe ich Schwierigkeiten mit reg. Ausdrücken.

Folgendes Problem:

Aus einem String möchte ich din Ausdrücke '<a href="../#', '<a href="./#', '<a href="../../#' ersetzen durch '<a href="#'

Versuch habe ich es so:

$pageContent = preg_replace("<a href="(.*)#/ismU", "<a href="#", $pageContent);

Das hat aber nicht funktioniert, statt dessen kamen Fehlermeldungen.

Was habe ich da verkehrt gemacht.

Vielen Dank im vorraus für Eure Hilfe,
Thorsten

  1. hi,

    preg_replace("<a href="(.*)#/ismU",

    wenn du nur punkte suchen willst, solltest du den punkt maskieren - . - ansonsten hat er die sonderbedeutung "jedes beliebige zeichen".

    und wo sind eigentlich die delimiter, die ein regulärer ausdruck am anfang und ende des suchmusters benötigt?

    gruss,
    wahsaga

  2. Hmm versuch's mal mit:

    $pageContent = preg_replace("/(?<=<a href=")((../)+?)(?=#)/i", "", $pageContent);