我这里有这个代码,用于检测包含HTML内容的字符串中的URL
$regex = "/(http|https)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/";
preg_match_all($regex, $desc, $url);
print_r($url);
代码效果很好,但print_r($url)
会返回以下网址:
http://url.com/</p>
</p>
只是关闭<p>
标记,但我不希望它在我的网址中。
我怎么能阻止它呢?
谢谢, 彼得
答案 0 :(得分:0)
我使用strip_tags
函数删除所有HTML标记,然后preg_match_all()
以获取每个网址:
$regex = "/(http|https)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/";
preg_match_all($regex, strip_tags(html_entity_decode($desc)), $url);
print_r($url);
我希望将来能帮助别人!
彼得