我正在寻找使用--p替换文本中所有URL的正确方法。
<a href=<link from the text>>PAGE TITLE OF THE LINK</a>
这就是说我有以下文字
I visit https://google.com, https://yahoo.com and other websites
我希望它修改为-
I visit [Google][1], [Yahoo][1] and other websites
。
非常感谢您的答复。谢谢!
答案 0 :(得分:0)
这应该可以解决问题...
$text = "Google is https://google.com and Yahoo is http://yahoo.com";
$text = preg_replace('/(http[s]{0,1}\:\/\/\S{4,})\s{0,}/ims', '<a href="$1" target="_blank">$1 </a>', $text);
echo $text;
但是,这只会使用链接URL作为标签来创建链接。要自动处理事物的标签方面,您必须根据打算在项目中使用的方式扩展代码。
答案 1 :(得分:0)
您可以使用以下表达式:
\bhttps?://\S+\b
将这部分内容细分
\b - a word boundary
http:// or https://
\S+ - no whitespaces, as long as possible
\b - another word boundary