JQuery, Regexp, сделать динамический URL - PullRequest
3 голосов
/ 30 марта 2010

Мне нужна помощь в регулярных выражениях, потому что у меня это займет много времени, у вас несколько минут :)

У меня есть YouTube URL:

http://www.youtube.com/watch?v=9_Hd8hXhg7o&feature=youtube_gdata 

Я не могу добавить это в объект для встраивания, для встраивания мне нужно изменить этот URL:

http://www.youtube.com/v/9_Hd8hXhg7o&hl=en_US&fs=1&

Это означает, что я хочу добавить треску на YouTube в какую-то переменную, что-то вроде этого

var url = after regexp "9_Hd8hXhg7o";

"http://www.youtube.com/v/" + url +"&hl=en_US&fs=1&";

спасибо!

1 Ответ

4 голосов
/ 30 марта 2010

Это должно сделать это:

var url = "http://www.youtube.com/watch?v=9_Hd8hXhg7o&feature=youtube_gdata";

var id = url.match(/(\?|&)v=(.*?)(&|$)/)[2];

var new_url = "http://www.youtube.com/v/" + id+"&hl=en_US&fs=1&";

Это должно работать практически во всех форматах, которые вы выбрасываете. В этом фрагменте выполняется поиск ?v= или &v= и любых символов после этого до символа & или конца строки, поэтому идентификатор также можно найти по следующим параметрам:

http://www.youtube.com/watch?v=9_Hd8hXhg7o
http://www.youtube.com/watch?feature=youtube_gdata&v=9_Hd8hXhg7o
http://www.youtube.com/watch?fs=1&v=9_Hd8hXhg7o&feature=youtube_gdata&
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...