Kopiuję funkcję, która pobiera adres URL youtube/vimeo i zwraca stronę z której wideo pochodzi (vimeo/yt), a także identyfikator wideo.Regex do wyodrębniania domeny i identyfikatora wideo z adresu URL youtube/vimeo
Oto co mam do tej pory: http://jsfiddle.net/csjwf/181/
<strong>Result:</strong>
<div id="result"></div>
function parseVideoURL(url) {
url.match(/^http:\/\/(?:.*?)\.?(youtube|vimeo)\.com\/(watch\?[^#]*v=(\w+)|(\d+)).+$/);
return {
provider : RegExp.$1,
id : RegExp.$1 == 'vimeo' ? RegExp.$2 : RegExp.$3
}
}
var result = document.getElementById("result");
var video = parseVideoURL("http://www.youtube.com/watch?v=PQLnmdOthmA&feature=feedrec_grec_index");
result.innerHTML = "Provider: " + video.provider + "<br>ID: " + video.id;
var video = parseVideoURL("http://vimeo.com/22080133");
result.innerHTML += "<br>--<br>Provider: " + video.provider + "<br>ID: " + video.id;
wyjściowa:
Result: Provider: youtube ID: PQLnmdOthmA -- Provider: vimeo ID: 2208013
jednak zauważyć, jak na Vimeo vids, jeśli adres URL kończy się w identyfikator, ostatnia liczba jest zawsze odcięta. Jeśli dodasz ukośnik na końcu adresu vimeo, identyfikator zostanie wciągnięty do końca.
Zostawię to [tutaj] (http://gskinner.com/RegExr/) tutaj. – Shea
@andrewjackson Wolę ten (http://regex.larsolavtorvik.com/) jeden. – Petah
@andrew .. Tak, użyłem tego narzędzia wcześniej, a to jest dla kogoś, kto rozumie regex .. –