我想使用 JavaScript(没有 jQuery,纯 JavaScript)从 YouTube 的 URL 获取 v=id
。
YouTube URL 格式示例
http://www.youtube.com/watch?v=u8nQa1cJyX8&a=GxdCwVVULXctT2lYDEPllDR0LRTutYfW
http://www.youtube.com/watch?v=u8nQa1cJyX8
或任何其他在 URL 中包含视频 ID 的 YouTube 格式。
这些格式的结果
u8nQa1cJyX8
最佳答案
我对“jeffreypriebe”提供的正则表达式进行了增强,因为他需要一种 YouTube URL,即视频在浏览 channel 时的 URL。
嗯,不,但这是我武装的功能。
<script type="text/javascript">
function youtube_parser(url){
var regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/;
var match = url.match(regExp);
return (match&&match[7].length==11)? match[7] : false;
}
</script>
这些是支持的 URL 类型
http://www.youtube.com/watch?v=0zM3nApSvMg&feature=feedrec_grec_index
http://www.youtube.com/user/IngridMichaelsonVEVO#p/a/u/1/QdK8U-VIH_o
http://www.youtube.com/v/0zM3nApSvMg?fs=1&hl=en_US&rel=0
http://www.youtube.com/watch?v=0zM3nApSvMg#t=0m10s
http://www.youtube.com/embed/0zM3nApSvMg?rel=0
http://www.youtube.com/watch?v=0zM3nApSvMg
http://youtu.be/0zM3nApSvMg
关于javascript - 如何从 URL 获取 YouTube 视频 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3452546/