例如文章内容包含以下链接地址:
这是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这是mkv视频测试这是mov视频测试这是swf视频测试这是avi视频测试这是mp4视频测试TXT;preg_match_all('/href="(.+)">(.+)$v){ $arr[] = array('url'=>$v, 'title'=>$m[2][$k]);}print_r($arr);
$str = <<< mark这是mkv视频测试这是mov视频测试这是swf视频测试这是avi视频测试这是mp4视频测试mark;$rule='#\(.*?)\<\/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);
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视频测试 ))
$str = <<< mark这是mkv视频测试这是mov视频测试这是swf视频测试这是avi视频测试这是mp4视频测试mark;$rule='#\(.*?)\<\/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);
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视频测试 ))
谢谢两位大大的给力回答,问题得到完美解决
谢谢两位大大的给力回答,问题得到完美解决