ホームページ >バックエンド開発 >PHPチュートリアル >正規表現を使用して YouTube 動画 ID を確実に抽出する方法

正規表現を使用して YouTube 動画 ID を確実に抽出する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-12-03 17:50:15907ブラウズ

How to Reliably Extract YouTube Video IDs Using Regular Expressions?

preg_match を使用して YouTube 動画 ID を解析する

preg_match を使用して YouTube URL から動画 ID を導出しようとすると、パターンが提供されている場合に問題が発生します「不明な修飾子 '[' エラー」が発生します。これに対処するために、さまざまな URL 形式でビデオ ID を効果的にキャプチャする代替正規表現が提供されています。

改良された正規表現は次のとおりです:

if (preg_match('%(?:youtube(?:-nocookie)?\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/\s]{11})%i', $url, $match)) {
    $video_id = $match[1];
}

このパターンは次の URL と正常に一致します。形式:

  • 完全な URL: http://www.youtube.com/watch?v=dQw4w9WgXcQ
  • 埋め込み URL: http://www.youtube.com/embed/dQw4w9WgXcQ
  • 短縮URL: http://youtu.be/dQw4w9WgXcQ
  • 検索 URL: http://www.youtube.com/?v=dQw4w9WgXcQ
  • ユーザー URL: http://www.youtube.com/user/username#p/u/11/dQw4w9WgXcQ
  • チャンネル URL: http://www.youtube.com/sandalsResorts#p/c/54B8C800269D7C1B/0/dQw4w9WgXcQ
  • 埋め込み URL (iframe): http://www.youtube.com/watch?feature=player_embedded&v=dQw4w9WgXcQ
  • 埋め込み URL (オブジェクト): http://www.youtube.com/?feature=player_embedded&v=dQw4w9WgXcQ

この正規表現を利用すると、さまざまな YouTube URL からビデオ ID を確実に抽出できます。

以上が正規表現を使用して YouTube 動画 ID を確実に抽出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。