【问题标题】:Convert text links to <a> tag将文本链接转换为 <a> 标签
【发布时间】: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):您的链接转换应该发生在发布阶段,而不是像现在这样的编辑阶段。除此之外它应该是双向的(转换和反向转换)。由于这开始是一个更复杂的问题,您希望转向已经存在的框架......

标签: php regex


【解决方案1】:

$pattern = '/(^http.+com$)/i'; 你的模式和上面的一样吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 2023-01-12
    • 1970-01-01
    相关资源
    最近更新 更多