Home > Backend Development > PHP Tutorial > php正则表达式如何获取内容中的视频地址和标题急

php正则表达式如何获取内容中的视频地址和标题急

WBOY
Release: 2016-06-23 13:43:46
Original
1759 people have browsed it

例如文章内容包含以下链接地址:

这是mkv视频测试
这是mov视频测试
这是swf视频测试
这是avi视频测试
这是mp4视频测试


我想通过正则得到下面的结果:
array(
url => mkv_test.mkv,
title => 这是mkv视频测试
)
array(
url => mov_test.mov,
title => 这是mov视频测试
)
array(
url => swf_test.swf,
title => 这是swf视频测试
)
……

请问如何写正则,急求急求


回复讨论(解决方案)

$s = <<< TXT<a href="mkv_test.mkv">这是mkv视频测试</a><a href="mov_test.mov">这是mov视频测试</a><a href="swf_test.swf">这是swf视频测试</a><a href="avi_test.avi">这是avi视频测试</a><a href="mp4_test.mp4">这是mp4视频测试</a>TXT;preg_match_all('/href="(.+)">(.+)</sU', $s, $m);$arr = array();foreach($m[1] as $k=>$v){    $arr[] = array('url'=>$v, 'title'=>$m[2][$k]);}print_r($arr);
Copy after login

$str = <<< mark<a href="mkv_test.mkv">这是mkv视频测试</a><a href="mov_test.mov">这是mov视频测试</a><a href="swf_test.swf">这是swf视频测试</a><a href="avi_test.avi">这是avi视频测试</a><a href="mp4_test.mp4">这是mp4视频测试</a>mark;$rule='#\<a href="(.*?)"\>(.*?)\<\/a>#';preg_match_all($rule,$str,$arr);$item=array();foreach($arr[1] as $k=>$v){  $item[]=array('url'=>$v,'title'=>$arr[2][$k]);}print_r($item);
Copy after login
Copy after login


Array(    [0] => Array        (            [url] => mkv_test.mkv            [title] => 这是mkv视频测试        )    [1] => Array        (            [url] => mov_test.mov            [title] => 这是mov视频测试        )    [2] => Array        (            [url] => swf_test.swf            [title] => 这是swf视频测试        )    [3] => Array        (            [url] => avi_test.avi            [title] => 这是avi视频测试        )    [4] => Array        (            [url] => mp4_test.mp4            [title] => 这是mp4视频测试        ))
Copy after login
Copy after login

$str = <<< mark<a href="mkv_test.mkv">这是mkv视频测试</a><a href="mov_test.mov">这是mov视频测试</a><a href="swf_test.swf">这是swf视频测试</a><a href="avi_test.avi">这是avi视频测试</a><a href="mp4_test.mp4">这是mp4视频测试</a>mark;$rule='#\<a href="(.*?)"\>(.*?)\<\/a>#';preg_match_all($rule,$str,$arr);$item=array();foreach($arr[1] as $k=>$v){  $item[]=array('url'=>$v,'title'=>$arr[2][$k]);}print_r($item);
Copy after login
Copy after login


Array(    [0] => Array        (            [url] => mkv_test.mkv            [title] => 这是mkv视频测试        )    [1] => Array        (            [url] => mov_test.mov            [title] => 这是mov视频测试        )    [2] => Array        (            [url] => swf_test.swf            [title] => 这是swf视频测试        )    [3] => Array        (            [url] => avi_test.avi            [title] => 这是avi视频测试        )    [4] => Array        (            [url] => mp4_test.mp4            [title] => 这是mp4视频测试        ))
Copy after login
Copy after login

谢谢两位大大的给力回答,问题得到完美解决

谢谢两位大大的给力回答,问题得到完美解决

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template