2017-02-11 133 views
0

我搜索了大量类似的问题,但仍不知道解决方案。其中一些太旧...
简单contenteditable div(或textarea)与里面的网址。将网址转换为可点击链接

<div id='story' contenteditable> 
Lorem ipsum www.google.com. Lorem ipsum lorem ipsum http://stackoverflow.com/questions/ask lorem ipsum. 
</div> 

网址主要是通过粘贴到文本中创建的。我需要将它们转换为可单击的链接,以便将新的可点击文本存储到数据库中。
任何帮助?

回答

0

如果我理解正确,您需要转换之前保存到数据库?用PHP? 如果是这样试试这个:

function replaceLinks($s) { 
    return preg_replace('@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.%-=#]*(\?\S+)?)?)?)@', '<a href="$1">$1</a>', $s); 
} 

$s="Lorem ipsum www.google.com. Lorem ipsum lorem ipsum http://stackoverflow.com/questions/ask lorem ipsum."; 

echo replaceLinks($s); 

输出将是:

Lorem ipsum www.google.com. Lorem ipsum lorem ipsum <a href="http://stackoverflow.com/questions/ask">http://stackoverflow.com/questions/ask</a> lorem ipsum. 
+0

什么是'$ s'的说法?全文? – bonaca

+0

是的。看看我的回答,我添加了完整的示例。 – VGranin