Anzeige:
Ergebnis 1 bis 2 von 2

Thema: back reference geht nicht

  1. #1
    Manfred-B
    Gast

    Question back reference geht nicht

    Hallo!
    Um eine form eingabe zu prüfen und zu zerlegen setze ich auf PHP 3.0.16
    seid einiger Zeit versuche ich jetzt rum:
    Code:
    preg_match("/(<.+?&#62 (.+?)(<\/\1&#62 /i","<html> blabla blabla </html>", $parts);
    
    function print_matcharray($parts)
    {
          print "index 0: $parts[0]\n";
          print "index 1: $parts[1]\n";
          print "index 2: $parts[2]\n";
          print "index 3: $parts[3]\n";
          print "index 4: $parts[4]\n";
    }
    print_matcharray($parts);
    \1 soll den fundstring der ersten klammer an seiner stelle einsetzen
    Das funktioniert aber nicht.
    wenn ich das /html tag durch \1 ersetze findet PHP ein ^A und auch die andern klammern finden wieder etwas. Was kann man da noch falsch machen?
    Bitte erlöst mich von dieser Quahl
    vielen Dank
    Manfred-B

  2. #2
    Manfred-B
    Gast

    Cool

    Hallo
    Es ist mir echt Peinlich: Schon wieder muß ich mir selber Antworten
    Das PHP Handbuch /usr/doc/packages/mod_php/doc/pcre.pattern.syntax.html enthält Fehler: Eine back reference muß in PHP mit 2 backslashes eingeleitet werden "\\2" dann funzt das einwandfrei
    Die beispiele in "function.preg-replace.html" haben mich darauf gebracht

    Gruß
    Manfred-B
    ps: die Smilies im [ code ] hab ich schon öfters gesehen! Das UBB Skript sollte in den code-tags kein html und ubb code substituieren, das würde das posten von code (was ja oft vorkommt) sehr erleichtern

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •