1
下面的代碼檢測到URL中的文本並將它們包裝在標記中。如何將條件類添加到PHP正則表達式篩選器
function link_it($text)
{
$text= preg_replace("/(^|[\n ])([\w]*?)((ht|f)tp(s)?:\/\/[\w]+[^ \,\"\n\r\t<]*)/is", "$1$2<a href=\"$3\" >$3</a>", $text);
$text= preg_replace("/(^|[\n ])([\w]*?)((www|ftp|m)\.[^ \,\"\t\n\r<]*)/is", "$1$2<a href=\"http://$3\" >$3</a>", $text);
$text= preg_replace("/(^|[\n ])([a-z0-9&\-_\.]+?)@([\w\-]+\.([\w\-\.]+)+)/i", "$1<a href=\"mailto:[email protected]$3\">[email protected]$3</a>", $text);
return($text);
}
我想它,以便如果用戶鍵入的URL(通過上面的功能檢測的)與特定域(的Flickr |的YouTube | VIMEO)等的函數將類「嵌入到標籤模板,否則就離開它沒有階級
如
'這是網站www.google.com' 將返回:
this is the website <a href="http://www.google.com">http://www.google.com</a>
,但 '這是網站www.flickr.com' W應該返回
this is the website <a href="http://www.flickr.com" class="embed">http://www.flickr.com</a>
我該如何去添加到函數中?
它的作品非常漂亮!謝謝。結合parse_url,它提供了一個不錯而優雅的解決方案。很好的回答,有點尷尬,我不知道這個功能! – gordyr
沒問題。很高興我能幫上忙。 – FtDRbwLXw6