REGEXP - im gefundenen Pattern noch mal ersetzen

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

  • REGEXP - im gefundenen Pattern noch mal ersetzen

    hi,

    möchte meine URL vor der Ausgabe umschreiben lassen.
    nun probiere ich schon seit tagen mit den REGEXP´s rum und komme nicht weiter.

    Code:
    $var = "http://www.meineseite.de";
    preg_replace("!(<a href='/test/index.php\?id=([a-z][0-9]*))\&([a-z][0-9]*)'(.*)>!","$var/\\1-\\2-\\3.html",$url);
    was das machen soll:
    alle URL´s, die nicht vollständig sind sollten ersetzt werden und gleichzeitig sollten die GET[] Variablen ebenfalls aufgesplittet werden. (& mit - ersetzten) Dabei soll das unabhängig von der Anzahl der GET[] Variablen funktionieren.

    Wie kann ich auf einen gefundenen Teil des Strings noch mal zusätzliche Änderungen anwenden?

    Wäre schön, wenn einer mir helfen könnte.

  • #2
    was ist hier falsch?

    Code:
    		print "Konvertiere";
    flush();
    
    $pattern  = '=^(.*)<a\\n*(.*)href\="?([^h][^t][^t][^p][^:]\S+)"';
    $pattern .= '([^>]*)\\n*>(.*)</a\\n*>(.*)$=msi';
    $repl = "\\1<a\\2 href=\"$this->rewriteURL(\\3)\"\\4>\\5</a>\\6";
    
    while (!$fertig)
    {
    
    $zeilenew = preg_replace($pattern, $repl, $zeile);
    
      if ($zeilenew == $zeile)
      {
         $fertig = true;
         $zeile = $zeilenew;
         flush();
         break;
      } else {
         $zeile = $zeilenew;
         print ".<br>\n";
         flush();
      }
    }
    
    print "Ersetzt:<br><br>".$zeile;
    irgendwie funktioniert das nicht so richtig.
    kann mir da jemand weiterhelfen?

    Kommentar

    Lädt...
    X