PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Preg_replace BBcode


Clownish
18.07.2006, 22:59:50
HeyHow... ich breuchte mal etwas hilfe bei preg_replace...
ich habe für mein Blog was ich gerade probiere zu schreiben ein bischen nach möglichem BBCode gegoogled, und dabei das gefunden:

$str = preg_replace('=\[b\](.*)\[/b\]=Uis',
'<span style="font-weight:bold;">\1</span>',
$str);

So eingebaut, funktioniert wunderbar... allerdings muss ich das ganze auch wieder für den edit modus umwanden können, und da fangen dann die probleme an...
Ich hab mir zwa http://www.php3.de/preg-replace durchgelesen, und auch probiert es selbst umzuschreiben, aber ich bekomm es einfach nicht gebacken, er meckert immer iregndwas, zb das da "\" zu viel wären etc...

Es wäre lieb wenn mir jemand einmal so ein ding "umstellen" könnte, weil ich bekomm es definiv nicht hin...

Versucht hab ich zb:
$str = preg_replace('=<span style="font-style:italic;">(.*)/span>=Uis',
'\1',
$str);


LG,
Fabian

xabbuh
18.07.2006, 23:06:03
Wieso speicherst du überhaupt den Text als HTML und nicht als unformatierten Text?

Clownish
18.07.2006, 23:15:37
DAS ist eine gute Frage -.- vll weil ich ein dummer Idiot bin und alles doppelnd machen will;)... Danke, da hätte ich auch selbst drauf kommen können.. oh man...

Andes
18.07.2006, 23:24:54
So hätte sonst der Pattern ausehen müssen.


$str = "Das ist <span style=\"font-style:italic;\">ein Text</span> der <span style=\"font-style:italic;\">mehrere</span> Zeichen doppelt enthält";

$str = preg_replace("/\<span style=\"font-style:italic;\">(.*?)\<\/span>/", "$1", $str);

Das ist ein Text der mehrere Zeichen doppelt enthält

Clownish
18.07.2006, 23:28:01
Dankeschön Andes!:)