我试图通过PHP preg_match
表达式将端口从YouTube嵌入代码拖入Javascript中。我目前有这在PHP:从YouTube中提取视频ID嵌入代码
$pattern = '%(?:https?://)?(?:www\.)?(?:youtu\.be/| youtube\.com(?:/embed/|/v/|/watch\?v=))([\w-]{10,12})[a-zA-Z0-9\<\>\"]%x';
$result = preg_match($pattern, $url, $matches);
这工作,并返回给我一个视频ID。我已经尝试使用,以得到它在Javascript工作如下:我使用
var reg = /(?:https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com(?:/embed/|/v/|/watch\?v=))([\w-]{10,12})/g;
var matches = uploadVideoEmbedCode.match(reg);
测试数据是:
<iframe width="560" height="315" src="http://www.youtube.com/embed/1NMUDb3Ewhs" frameborder="0" allowfullscreen></iframe>
当我尝试在JavaScript中使用我上述正则表达式得到以下错误:
Uncaught SyntaxError: Unexpected token ?
你的帮助将永远不胜感激。
你不觉得你应该在你的博客上给答案所有者的功劳吗? http://www.neilyoungcv.com/blog/code-share/retrieving-youtube-video-id-from-embed-code-using-php-and-javascript/ –