[GastForen Programmierung/Entwicklung PHP und MySQL

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste

Parseroptimierung für Hilfdirselbst (preg_match)

oesi50
  
Beiträge gesamt: 2315

27. Sep 2003, 10:13
Bewertung:

gelesen: 3897

Beitrag als Lesezeichen
hi Miro,

In der Hoffnung, dich jetzt richtig verstanden zu haben, poste ich einfach mal folgenden Code:

$options = "quelle='' formatierungsoption1 option2='xy\'uhu\'abc'";
$options .= " ";
while(preg_match("#^( *)([a-zA-Z0-9]*)(=[']?(.*?)[']?)? +(.*)#s", $options, $regs))
{
$options = $regs[5];
if($regs[2]=='') { $optarr['default'] = $regs[4]; }
else if($regs[3]=='') { $optarr[$regs[2]] = 1; } // Just a SET-OPTION
else {
$temp1 = preg_replace("/(\\(.)){1}","/$2/",$regs[4]);
$temp2 = $regs[2];
$optarr[$temp2] = $temp1;
}
$i++; // Restructurate / Next element
}

Hier kann innerhalb der Werte ($4) jedes Zeichen mit \ escaped werden. Das \ muß natürlich jetzt zwingend escaped werden.

Grüße Oesi

(Dieser Beitrag wurde von oesi50 am 27. Sep 2003, 11:07 geändert)
Dieser Beitrag wurde nicht geändert.