search_exp)) { $this->search_exp = array( "/\s*\[quote\][\n\r]*(.+?)[\n\r]*\[\/quote\]\s*/is", "/\[url\]\s*(https?:\/\/|ftp:\/\/|gopher:\/\/|news:\/\/|telnet:\/\/|rtsp:\/\/|mms:\/\/|callto:\/\/|ed2k:\/\/){1}([^\[\"']+?)\s*\[\/url\]/i", "/\[em:(.+?):\]/i", ); $this->replace_exp = array( "
\\1
", "\\1\\2", " " ); $this->search_str = array('[b]', '[/b]','[i]', '[/i]', '[u]', '[/u]'); $this->replace_str = array('', '', '','', '', ''); } if($parseurl==2) { $this->search_exp[] = "/\[img\]\s*([^\[\<\r\n]+?)\s*\[\/img\]/ies"; $this->replace_exp[] = '$this->bb_img(\'\\1\')'; $message = bbcode::parseurl($message); } @$message = str_replace($this->search_str, $this->replace_str,preg_replace($this->search_exp, $this->replace_exp, $message, 20)); return nl2br(str_replace(array("\t", ' ', ' '), array('        ', '   ', '  '), $message)); } function parseurl($message) { return preg_replace("/(?<=[^\]a-z0-9-=\"'\\/])((https?|ftp|gopher|news|telnet|mms|rtsp):\/\/)([a-z0-9\/\-_+=.~!%@?#%&;:$\\()|]+)/i", "[url]\\1\\3[/url]", ' '.$message); } function html2bbcode($message) { if(empty($this->html_s_exp)) { $this->html_s_exp = array( "/\
\(.*?)\<\/span\>\<\/div\>/is", "/\