-2
目前我的功能看起來是這樣的。它將純文本URL轉換爲HTML鏈接。
function UrlsToLinks($text){
return preg_replace('@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.-]*(\?\S+)?)?)?)@', '<a href="$1" target="_blank">$1</a>', $text);
}
但也有一些問題。我想要做的是跳過現有的鏈接,src
屬性<img>
標籤等。無法弄清楚我需要修改這個功能。
你試圖解析的字符串是什麼? – 2012-08-14 19:26:39
使用正則表達式實現您的期望功能非常困難,如果不是不可能的話,更不用說單個正則表達式。您確實應該使用HTML解析器,僅在HTML節點的文本內容中查找鏈接。 – nickb 2012-08-14 19:26:56
你需要做的是使用HTML解析器來提取文本節點,並只通過上述函數運行* them *。試圖修改它,以便它會忽略HTML和HTML的部分將會降低託尼小馬的憤怒,我們都將在火熱的深度燃燒。無論是那個還是你的應用程序都是不安全和不可靠的,其中之一。 – DaveRandom 2012-08-14 19:28:06