2012-02-28 102 views
0

可能重複:
Javascript REGEX: How to get youtube video id from URL?從字符串中抓取url變量?

在javascript中我需要抓住一個URL變量,可以是第一個變量,但不一定。該網址是來自Youtube的一個網址字符串。起初我使用正則表達式替換&上的所有內容,但後來我發現視頻變量並不總是第一個。我用正則表達式並不好,只是去了我可以找到的教程,並仔細檢查以確保它正常工作。所以我需要能夠抓住v=videoletters部分。如果我能抓住這一點,我想我可以從那時起就制定出正常的YouTube網址,這正是我所需要的。

回答

0

這裏是一個函數,它正是你問什麼:

function gup(name) 
{ 
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); 
    var regexS = "[\\?&]"+name+"=([^&#]*)"; 
    var regex = new RegExp(regexS); 
    var results = regex.exec(window.location.href); 
    if(results == null) 
    return ""; 
    else 
    return results[1]; 
} 

通過此頁面上的谷歌搜索中找到:http://www.netlobo.com/url_query_string_javascript.html

所以,你只需做:

var videoletters = gup("v"); 

還有許多其他方法可以做到這一點,您可以通過自己的搜索查看。下面是其他幾個:

How to retrieve query string parameter and values using javascript (Jquery)?

http://www.idealog.us/2006/06/javascript_to_p.html

http://stevenbenner.com/2010/03/javascript-regex-trick-parse-a-query-string-into-an-object/

http://geekswithblogs.net/PhubarBaz/archive/2011/11/21/getting-query-parameters-in-javascript.aspx