使用 preg_match 解析 YouTube 视频 ID:扩展解决方案
在各种 Web 开发场景中经常会出现提取 YouTube 视频 ID 的需求。在这种情况下,您可能会遇到使用 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格式:
此外,该解决方案涵盖“youtube.com”和“youtube-nocookie.com”上的网址,以及 iframe 和对象标记中的嵌入网址。
总而言之,这种改进的方法为提取 YouTube 提供了全面的解决方案来自各种 URL 格式的视频 ID,确保准确性和易用性。
以上是如何使用'preg_match”从各种 URL 中可靠地提取 YouTube 视频 ID?的详细内容。更多信息请关注PHP中文网其他相关文章!