if ($stripquotes) { // [quote=username] and [quote] $message = strip_quotes($message); }
// a really quick and rather nasty way of removing vbcode if ($fast_and_dirty) { // any old thing in square brackets $find[] = '#\[.*/?\]#siU'; $replace[] = '';
$message = preg_replace($find, $replace, $message); } // the preferable way to remove vbcode else { // simple links $find[] = '#\[(email|url)=("??)(.+)\\2\]\\3\[/\\1\]#siU'; $replace[] = '\3';
// named links $find[] = '#\[(email|url)=("??)(.+)\\2\](.+)\[/\\1\]#siU'; $replace[] = '\4 (\3)';
// replace links (and quotes if specified) from message $message = preg_replace($find, $replace, $message);
// strip out all other instances of [x]...[/x] while(preg_match_all('#\[([\w]+?)[^\]]*\](.*)(\[/\1\])#siU', $message, $regs)) { foreach($regs[0] AS $key => $val) { $message = str_replace($val, $regs[2]["$key"], $message); } } $message = str_replace('[*]', ' ', $message); }