应该如何看待从字符串中删除除完整 http url 之外的所有内容的代码?只有正则表达式吗?如果是这样,有人可以给我任何例子吗
问问题
962 次
1 回答
4
将从字符串中提取单个 URL:
$string = 'some random text then url http://www.example.com/ and more text';
preg_match('!https?://[\w+&@#/%?=~|\!\:,.;-]*[\w+&@#/%=~|-]!', $string, $match);
echo $match[0];
将从字符串中提取多个 URL 到一个数组中:
$string = 'put some text http://stackoverflow.com/something/something.php some random text then url http://www.example.com/ and more text';
preg_match_all('!https?://[\w+&@#/%?=~|\!\:,.;-]*[\w+&@#/%=~|-]!', $string, $match);
print_r($match[0]);
因此,要从本质上“删除”除 URL 之外的所有内容,您可以将字符串设置为匹配的值:
$string = $match[0];
于 2012-12-01T08:37:24.517 回答