我想弄清楚一个字符串是否包含超过 1 次http://
像这样:
http://uploading.com/files/c8e99378/image-slider-skins.zip/http://www.filesonic.com/file/3524497744/image-slider-skins.zip
我知道如何确定它是否存在,但是如何在第二个开头拆分字符串http
?
$parts = explode('http://', $str);
$secondPart = 'http://'.$parts[2];
echo $secondPart;
文档中的更多信息explode
或其他一些方法(更简单且更快):
$firstPart = substr($str, 0, strpos($str, 'http://', 8));
或者你也可以使用我不推荐的正则表达式,因为它对于这个简单的任务来说太重了:
if (preg_match('/(http:\/\/.*)(?=http:\/\/)/', $str, $matches)) {
echo $matches[1];
}
使用爆炸
$parts = explode('http://', $string);
您还可以直接将部分结果提取到变量中:
list($part1, $part2) = explode('http://', $string);