jquery,Regex,制作动态网址

时间:2010-03-30 18:04:18

标签: javascript regex 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 cod,就像这样

var url = after regexp "9_Hd8hXhg7o";

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

谢谢!

1 个答案:

答案 0 :(得分:4)

这应该这样做:

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=以及之后的任何字符,直到&符号或行尾,因此也可以从这些字符中找到ID:

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&