W pewnym skrypcie chciałbym, aby w tekstach wszystko co wygląda na url było zamieniane na <a href="""> etc. Czyli np. Jak jest w tekście "http://forum.php.pl/" to by to się zamieniło na <a href="http://forum.php.pl/">http://forum.php.pl/</a>
No i dawno temu znalazłem takie coś:
CODE
function ReplaceLinks($text) {
// match protocol://address/path/file.extension?some=variable&another=asf%
$text = preg_replace("/([a-zA-Z]+:\/\/[a-z0-9\_\.\-]+".
"[a-z]{2,6}[a-zA-Z0-9\/\*\-\?\&\%\=\,\.]+)/",
" $1", $text);
return $text
}
// match protocol://address/path/file.extension?some=variable&another=asf%
$text = preg_replace("/([a-zA-Z]+:\/\/[a-z0-9\_\.\-]+".
"[a-z]{2,6}[a-zA-Z0-9\/\*\-\?\&\%\=\,\.]+)/",
" $1", $text);
return $text
}
Niestety nie działa gdy w linku jest _ (podkreślnik) - jest tu ktoś kto się orientuje w tych wyrażeniach regularnych?