so schnell kanns gehen... ich habe in meinem ausdruck ein ? vergessen. Anstatt (.*) muss es (.*?) heißen :-)
Hi,
das ergibt bei mir folgendes:PHP-Code:$string = "bla bla bla [KOMMENTAR]Hallo Test...[/KOMMENTAR]weiter gehts [KOMMENTAR]zweiter Kommentar...[/KOMMENTAR] und weiter gehts";
$output = preg_replace('/(\[KOMMENTAR\])(.*)(\[\/KOMMENTAR\])/','$2',$string);
bla bla bla Hallo Test...[/KOMMENTAR]weiter gehts [KOMMENTAR]zweiter Kommentar... und weiter gehts
ich möchte aber das jeder Kommentar-Tag ersetzt wird... so ähnlich wie bei dem BB-Code hier im Forum... bei mehreren Tags wird ja auch mehrmals ersetzt. Bei mir leider nur ein mal..kann mir da jemand weiterhelfen?
so schnell kanns gehen... ich habe in meinem ausdruck ein ? vergessen. Anstatt (.*) muss es (.*?) heißen :-)
Die einfachste und beste Lösung ist es, wenn Du dir z.B. phpBB downloadest und die darin verwendete BBCode Parser Klasse benutzt. Dann sind auch unbekannte/neue BBCodes, sowie verschachtelte BBCodes kein Problem mehr.
#.Viele Grüße - Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
PHP Tutorials und kostenlose Scripts gibt's bei phpBuddy.eu
Follow phpBuddy on Twitter
LTFB - anfängerfreundliche Tutorials
.
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)