例如:youtube嵌入代码
<object width="480" height="385">
<param name="movie" value="http://www.youtube.com/v/TFlzeO267qY&hl=en_US&fs=1&"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/TFlzeO267qY&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed>
</object>
我想从这个嵌入代码中提取http://www.youtube.com/v/TFlzeO267qY&hl=en_US&fs=1&"
,但我不知道如何为此创建一个正则表达式
先谢谢了吗?
答案 0 :(得分:2)
我不确定这段代码是否是你需要的......尝试一下也许它会帮助你理解 正则表达式 :
$var = '<object width="480" height="385">
<param name="movie" value="http://www.youtube.com/v/TFlzeO267qY&hl=en_US&fs=1&"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/TFlzeO267qY&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed>
</object>';
preg_match('/src="(.*?)"/', $var, $src);
$src = $src[1];
echo $src;
答案 1 :(得分:1)
这适用于您提供的示例链接:
http://(?:www\.)?youtube\.com/v/[\w&=]+
你需要逃避斜杠,这样它们仍然是正则表达式的一部分。