我正在使用正则表达式解析网址。有些网址没有完全显示。我使用以下代码。
如果$ string值在
之后它正在工作$string= "[video width="1280" height="720" mp4="http://egghead-site.s3.amazonaws.com/samples/DOS.mp4" title="DOS Software"][/video]" ;
如果mp4值跟随,那么它不起作用。它只返回半个网址。
$string =[video width="1280" height="720" mp4="http://egghead-site.s3.amazonaws.com/samples/Colon%20Health%20Final%20V3.mp4" title="Synergi" ][/video]";
$imageurl = !empty( $string ) ? preg_match_all('@((https?://)?([-\w]+\.[-\w\.]+)+\w(:\d+)?(/([-\w/_\.]*(\?\S+)?)?)*)@', $string , $match) : '';
return isset($match[0][0]) ? ut_portfolio_add_http($match[0][0]) : '';
我想获取视频网址。我是正则表达式的新手,所以我坚持这一点。请告诉我如何在两种情况下都能得到它。
答案 0 :(得分:0)
我只是对你的正则表达式进行了一些小改动,它似乎正在准确地找到你想要的东西。见这里:
((https?:\/\/)+(.+\.[-\w\.]+)+\w(:\d+)?(/([-\w/_\.]*(\?\S+)?)?)*)