PHPpreg_match
式を移植して、JavascriptのYouTube埋め込みコードからビデオIDを取得しようとしています。私は現在PHPでこれを持っています:
$pattern = '%(?:https?://)?(?:www\.)?(?:youtu\.be/| youtube\.com(?:/embed/|/v/|/watch\?v=))([\w-]{10,12})[a-zA-Z0-9\<\>\"]%x';
$result = preg_match($pattern, $url, $matches);
これは機能し、ビデオIDを返します。Javascriptで動作させるために、以下を使用してみました。
var reg = /(?:https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com(?:/embed/|/v/|/watch\?v=))([\w-]{10,12})/g;
var matches = uploadVideoEmbedCode.match(reg);
私が使用しているテストデータは次のとおりです。
<iframe width="560" height="315" src="http://www.youtube.com/embed/1NMUDb3Ewhs" frameborder="0" allowfullscreen></iframe>
上記の正規表現をjavascriptで使用しようとすると、次のエラーが発生します。
Uncaught SyntaxError:予期しないトークン?
いつものように助けていただければ幸いです。