//------------------ Вспомогательная функция для bb-кода --------------------// function url_replace($m) { if( !isset($m[3]) ) { return '<a href="' . $m[1] . '">' . $m[2] . '</a>'; } else { return '<a href="' . $m[3] . '">' . $m[3] . '</a>'; }} $message = preg_replace_callback('~\\http://.+?)\\](.+?)\\[/url\\]|(http://(www.)?[0-9a-z\.-]+\.[a-z]{2,6}[0-9a-zA-Z/\?\.\~&_=/%-:#]*)~', 'url_replace', $message); Кто в курсе что нетак с регуляркой рвет большие ссылки
Она не по размеру урл рвет. А по какому-то конкретному символу. Какой именно символ мне лень разбирать.