PHP RegExp probleem
Koen Bokern
06/07/2009 22:17:00Hallo allemaal,
Ik heb een uitgebreide UBB parser geschreven. Alleen heb een probleem bij het parsen van quotes in quotes. Als je dus gebruikt '[--quote--][--quote--][--quote--][/--quote--][/--quote--][/--quote--]' (zonder streepjes natuurlijk), dan parsed hij dus 2 keer goed, en dan zie ik een keer gewoon quote tags die niet zijn geparsed.
Heeft iemand een idee hoe ik dit kan oplossen?
Ik heb een uitgebreide UBB parser geschreven. Alleen heb een probleem bij het parsen van quotes in quotes. Als je dus gebruikt '[--quote--][--quote--][--quote--][/--quote--][/--quote--][/--quote--]' (zonder streepjes natuurlijk), dan parsed hij dus 2 keer goed, en dan zie ik een keer gewoon quote tags die niet zijn geparsed.
Heeft iemand een idee hoe ik dit kan oplossen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
private function ubb_quote($string) {
$qstring = '<div class="forum_quote">';
$qstring .= '<span class="forum_quote_van">Citaat van \\1</span><br />';
$qstring .= '\\2';
$qstring .= '</div>';
$string = preg_replace('#\[quote=(.*?)\](.*?)\[\/quote\]#si', $qstring, $string);
$qstring = '<div class="forum_quote">';
$qstring .= '<span class="forum_quote_van">Citaat</span><br />';
$qstring .= '\\1';
$qstring .= '</div>';
$string = preg_replace('#\[quote\](.*?)\[\/quote\]#si', $qstring, $string);
return $string;
}
?>
private function ubb_quote($string) {
$qstring = '<div class="forum_quote">';
$qstring .= '<span class="forum_quote_van">Citaat van \\1</span><br />';
$qstring .= '\\2';
$qstring .= '</div>';
$string = preg_replace('#\[quote=(.*?)\](.*?)\[\/quote\]#si', $qstring, $string);
$qstring = '<div class="forum_quote">';
$qstring .= '<span class="forum_quote_van">Citaat</span><br />';
$qstring .= '\\1';
$qstring .= '</div>';
$string = preg_replace('#\[quote\](.*?)\[\/quote\]#si', $qstring, $string);
return $string;
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Koen Bokern
Er zijn nog geen reacties op dit bericht.