1

Vimeo と YouTube の両方の URL からビデオ ID を取得できる関数が必要です。

私はいくつかの掘り下げを行い、これらのURLを見つけました:

https://vimeo.com/30466080 
https://vimeo.com/30466080#t=0 
http://www.youtube.com/watch?feature=player_detailpage&v=My2FRPA3Gf8 http://www.youtube.com/watch?v=My2FRPA3Gf8 
//www.youtube.com/v/My2FRPA3Gf8?version=3&hl=en_GB 
//www.youtube-nocookie.com/v/My2FRPA3Gf8?version=3&hl=en_GB //www.youtube.com/embed/My2FRPA3Gf8

Vimeo は、本当に 1 種類しかなく、常に同じ位置にあります。

ただし、YouTube は、64 ビット ID アルゴリズムがすぐに変更されることはないと言っても過言ではありません。

6 つまたは 7 つの異なる if コマンドをチェーンするのではなく、これに取り組む最善の方法は何でしょうか?

シャノン

4

3 に答える 3

1

これはちょっと醜いですが、上記の例をすべてキャッチします。

  function videoID(url) {
    return url.replace(/\\/g,'/').replace( /.*\//, '').replace(/#.*/, '').replace(/(.*\?v=|\?version=.*)/, '');
  }
于 2013-09-19T01:24:59.620 に答える