YouTubeビデオIDを抽出する次の正規表現があります
var regExp = /^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=)([^#\&\?]*).*/;
たとえば、これは一致します
http://www.youtube.com/watch?v=9bZkp7q19f0&desc=gangnam
ただし、ビデオ パラメータが最初に来ない場合があり、その結果、以下が一致しません。
http://www.youtube.com/watch?desc=gangnam&v=9bZkp7q19f0
v パラメーターの前に or があることを説明するために、正規表現に or 句をどのように含めます&
か?
?
以下を試しましたが、うまくいきませんでした
var regExp = /^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\[?$]v=)([^#\&\?]*).*/;