Php函数,从短文本中提取链接

时间:2010-10-01 00:13:19

标签: php

我正在寻找一个函数,来提取这段代码的mp3源代码: http://www.xyz.com/previews/speed_racer_preview.mp3 1930510 audio/mpeg

我只需要那部分: http://www.xyz.com/previews/speed_racer_preview.mp3

此部分始终具有相同的结构,只有源更改。

5 个答案:

答案 0 :(得分:2)

如果它的格式总是那样只使用explode(它会将字符串分解为给定字符的数组,在本例中为空格):

$arr = explode(' ',$the_data_string);
$URL = $arr[0];

希望这有帮助,

Lemiant

PS有关详细信息,请阅读the manual

答案 1 :(得分:0)

echo substr($str, 0, strpos($str, ' '));

答案 2 :(得分:0)

$arr = explode(" ",$url);

explode方法返回一个数组:

$finalurl = $arr[0]

答案 3 :(得分:0)

你可以使用PHP's regex functions之一的正则表达式(你可能需要稍微调整一下,我刚刚在BareGrep中做了这个,没有为你编写完整的PHP函数,但这应该让你开始,引号当然不是正则表达式的一部分):

" ([A-Za-z0-9_//:.]+[.]mp3) "

答案 4 :(得分:0)

使用正则表达式。所有匹配都保存在$ result数组中。

$res = preg_match("/http:\/\/[^\s]+\.mp3/", $source, $result);
print_r($result); // Each index will be a different matched mp3, if there is more than one

返回值是一个bool,表示匹配是否为正。