$patterns = array ( "/(http\:\/\/[^\s]+)/i",
"/(ftp\:\/\/[^\s]+)/i",
"/(mailto\:([^\s]+))/i",
"/\__(.+)\__/i",
);
$replace = array ( "<a href=\"\\1\" target=\"_blank\">\\1</a>",
"<a href=\"\\1\" target=\"_blank\">\\1</a>",
"<a href=\"\\1\" target=\"_blank\">\\2</a>",
"<b>\\1</b>",
);
$text = preg_replace($patterns,$replace, $text);
shaadi piemeram ...