Имею такое виражение.
$text = preg_replace("/(http:\/\/([a-zA-Z_0-9\.\?\&\#\;\:\+\-\=\%\/]*))/i", " <a href=\"http://\\2\" target=\"_blank\">http://\\2</a>", $text);
В переменной $text находится текст и если там есть ссылка которая начинается с http она делается активная, то есть добавляются html теги. Как суда вписать еще https а то если в тексте ссылка начинается с https номер не проходит.
Сделал так. Мож кому пригодится.
function replace_link_text($text){
return preg_replace('!(((f|ht)tp(s)?://)[-a-zA-Zа-яА-Я()0-9@:%_+.~#?&;//=]+)!i', '<a href="$1">$1</a>', $text);
}