我已经看了很多,我已经看到很多方法来解析视频ID的YouTube网址,但是,他们都没有匹配所有的YouTube网址可以在各种格式。已经尝试搞乱前一篇文章中提到的正则表达式,但似乎没有任何工作。用于YouTube的正则表达式ID
我发现的最接近的职位,涵盖所有不同的URL格式是这样的一个: http://www.youtube.com/sandalsResorts#p/c/54B8C800269D7C1B/0/FJUvudQsKCM
我在Javascript中这样做:How do I find all YouTube video ids in a string using a regex?
然而,这不适用于工作。有人可以帮忙吗?
Thanx提前。
当前URL格式和脚本我使用:
var url = "http://www.youtube.com/sandalsResorts#p/c/54B8C800269D7C1B/0/FJUvudQsKCM";
//var url = "http://www.youtube.com/user/Scobleizer#p/u/1/1p3vcRhsYGo";
//var url = "http://youtu.be/NLqAF9hrVbY";
//var url = "http://www.youtube.com/embed/NLqAF9hrVbY";
//var url = "https://www.youtube.com/embed/NLqAF9hrVbY";
//var url = "http://www.youtube.com/v/NLqAF9hrVbY?fs=1&hl=en_US";
//var url = "http://www.youtube.com/watch?v=NLqAF9hrVbY";
//var url = "http://www.youtube.com/user/Scobleizer#p/u/1/1p3vcRhsYGo";
//var url = "http://www.youtube.com/ytscreeningroom?v=NRHVzbJVx8I";
//var url = "http://www.youtube.com/user/Scobleizer#p/u/1/1p3vcRhsYGo";
//var url = "http://www.youtube.com/watch?v=JYArUl0TzhA&feature=featured";
var videoID = url.match(/(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch\?v=|\/user\/\S+|\/ytscreeningroom\?v=))([\w\-]{10,12})\b/)[1];
alert(videoID);
的可能重复[使用Javascript REGEX:如何从URL获取YouTube视频ID?](http://stackoverflow.com/questions/3452546/javascript-regex-how-to-get-youtube-video-id-from-url) –
你可以试试[获得视频-ID(https://github.com/radiovisual/get-video-id)。它会从任何已知的YouTube网址字符串(或嵌入字符串)中获取该ID。 – radiovisual