【问题标题】:Multi-line Links with preg_replace | PHPpreg_replace 的多行链接 | PHP
【发布时间】:2010-08-17 16:09:02
【问题描述】:

如果有人发布包含文本和链接的多行帖子,我希望能够找到并用<p>标签包装链接,但我一次只能使用一个链接(源代码来自来自 phpBB2 - 可点击链接功能),这导致每个链接都是这样的:

<p>http://www.bbc.co.uk/</p>
<p>http://www.bbc.co.uk/</p>
<p>http://www.bbc.co.uk/</p>

我希望它发生在这样的地方:

<p>http://www.bbc.co.uk/
http://www.bbc.co.uk/
http://www.bbc.co.uk/</p>

干杯。

【问题讨论】:

    标签: php preg-replace


    【解决方案1】:

    将其提供给 DOM loadHTML 函数和 getElementsByTagName('p'),在 -&gt;length 的基础上使用 -&gt;item(i) 进行引用,获取 nodeValue 并使用 document.createElement 创建一个新段落,将 nodeValue 设置为您在将它们与\n&lt;br&gt; 或其他东西连接后从循环中检索到的nodeValues 字符串。

    您不应该为此使用正则表达式。

    【讨论】:

    • 为什么?为什么我不应该为此使用正则表达式?
    • 原因很多。 stackoverflow.com/questions/1732348/… 本质上,HTML 不是常规语言,因此正则表达式没有能力完全正确地解析它。在某些情况下,正则表达式可以帮助您处理 HTML,但它很少是适合这项工作的工具。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-14
    相关资源
    最近更新 更多