【发布时间】:2016-06-15 07:05:23
【问题描述】:
在我的网站上,用户可以使用简单的文本编辑器创建文章。 通常在那篇文章中,我看到这样的链接:http://example.com 作为纯文本。我需要一个简单的 PHP 函数来将此类链接转换为:
<a href="http://example.com">http://example.com</a>
首先我在考虑简单的正则表达式替换,但是如果用户第二次保存文章怎么办?这段代码将再次被正则表达式:
<a href="http://example.com">http://example.com</a>
变成
<a href="<a href="http://example.com">http://example.com</a>"><a href="http://example.com">http://example.com</a></a>
任何建议,如何解决这个问题?
编辑: 我用了很多正则表达式,最后一个是:
/(http|https)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,6}(\/\S*)+?/
【问题讨论】:
-
我认为您从错误的角度解决了问题(将文本转换为 html):您的链接转换应该发生在发布阶段,而不是像现在这样的编辑阶段。除此之外它应该是双向的(转换和反向转换)。由于这开始是一个更复杂的问题,您希望转向已经存在的框架......