我想在javascript中創建一個自動鏈接功能,當用戶鍵入(ContentEditable div)時,會自動將url轉換爲鏈接。JavaScript自動鏈接的網址,但避免遞歸
我用這個表達式:
var text = 'Some text containing URLs';
var exp = /(\b(http):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
var newtext = text.replace(exp,"<a href='$1'>$1</a>");
上面的代碼工作正常,但由於代碼獲取每次稱爲用戶類型,遞歸發生:
<a href='<a href='<a href=' etc.
我怎樣才能避免這種情況發生時,仍然有腳本更新文本作爲用戶類型?
所以,問題是(感謝@putvande):我如何檢查,如果網址不已經包含:
<a href='...
(我不是正則表達式真的很方便)
你需要用你的正則表達式來檢查是否已經有''標籤在你的代碼。 – putvande
我發現了一個非正則表達式解決方案來解決我的問題,在正則表達式函數之前,我去掉了所有的標籤。看到我的小提琴jsfiddle.net/gerbenzomp/UJMeR/3可能不是最優雅的解決方案,所以我仍然對僅有正則表達式的解決方案非常感興趣。 – Gerben
Hay @Gerben你是否解決了這個問題?我需要一個解決方案即時通訊工作 – dhee