我正在使用这个正则表达式:
$string = preg_replace("~(?!(?:https?://(?:www\.)?|www\.)(?:youtube\.com))(?:https?://(?:www\.)?|www\.)[\w./=?#-%:-]+~i",
'<a target="_blank" href="$0">$0</a>', $string);
但我无法将此处的链接显示为可点击文本:
http://2.bp.blogspot.com/_mGMUxSe_j0I/R24t5bmY2nI/AAAAAAAAAs4/ndqvaJ1Z-oY/s400/chernobyl+-+multiple+sclerosis.jpg
它只是建立一个链接,直到+-+,它停止使其可点击。它再次变成纯文本。
http://chornobyl.in.ua/wp-content/uploads/photo-wolf-640×250.jpg
这不会在链接中显示640之后的内容(因此不会得到 x)。
如果我在其中添加 a+
或 a x
,它会获取包含链接[\w./=?#-%:-]
的整个</p>
标签。老实说,我不知道该怎么办。有人可以帮我吗?