如何修改正则表达式以解析YouTube URL中的参数

时间:2013-03-17 01:37:34

标签: javascript regex parsing url youtube

我有这个正则表达式:

/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/;

它会解析来自YouTube网址的视频ID,例如

  

http://www.youtube.com/watch?v=6ciG_6Y3rD0&feature=youtu.be&t=6m40s

  

http://youtu.be/6ciG_6Y3rD0?t=6m40s

我想修改它,以便它也解析 t 参数。

有什么想法吗?

谢谢, 豪伊

1 个答案:

答案 0 :(得分:3)

捕获YouTube视频ID(及时间搜索参数t,如果存在)

RegExp:

^(?:https?\:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v\=))([\w-]{10,12})(?:[\&\?\#].*?)*?(?:[\&\?\#]t=([\dhm]+s))?$

在这里演示:http://fiddle.re/w1nn6

PS:您会注意到我改进了您的原始RegEx以安全地验证YouTube链接