ホームページ >バックエンド開発 >PHPチュートリアル >「preg_match」を使用してさまざまな URL から YouTube ビデオ ID を確実に抽出するにはどうすればよいですか?

「preg_match」を使用してさまざまな URL から YouTube ビデオ ID を確実に抽出するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-09 01:33:10261ブラウズ

How Can I Reliably Extract YouTube Video IDs from Various URLs using `preg_match`?

preg_match を使用した YouTube ビデオ ID の解析: 拡張ソリューション

YouTube ビデオ ID を抽出する必要性は、さまざまな Web 開発シナリオでよく発生します。このコンテキストでは、preg_match を使用して URL からビデオ ID を解析するという課題が発生する可能性があります。最初に見つけた正規表現は有望に見えるかもしれませんが、エラーにつながる可能性のある不可解な修飾子とグループが含まれています。

拡張されたアプローチは、幅広い YouTube URL 形式をカバーする、より包括的な正規表現を利用することです。私たちが推奨する改良された正規表現は次のとおりです:

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

この拡張正規表現は次の URL をキャプチャします。形式:

  • http://youtu.be/dQw4w9WgXcQ
  • http://www.youtube.com/embed/dQw4w9WgXcQ
  • http://www .youtube.com/watch?v=dQw4w9WgXcQ
  • http://www.youtube.com/?v=dQw4w9WgXcQ
  • http://www.youtube.com/v/dQw4w9WgXcQ
  • http://www.youtube. com/e/dQw4w9WgXcQ
  • http://www. youtube.com/user/username#p/u/11/dQw4w9WgXcQ
  • http://www.youtube.com/sandalsResorts#p/c/54B8C800269D7C1B/0/dQw4w9WgXcQ
  • http: // www.yo utube.com/watch?feature=player_embedded&v=dQw4w9WgXcQ
  • http://www.youtube.com/?feature=player_embedded&v=dQw4w9WgXcQ

さらに、このソリューションは、「youtube.com」と「youtube-nocookie.com」の両方の URL に加え、iframe タグとオブジェクト タグ内の埋め込み URL もカバーします。

要約すると、この洗練されたアプローチは、YouTube を抽出するための包括的なソリューションを提供します。さまざまな URL 形式のビデオ ID を使用して、正確さと使いやすさを保証します。

以上が「preg_match」を使用してさまざまな URL から YouTube ビデオ ID を確実に抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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