所以我正在尝试使用正则表达式从 vimeo url 获取视频 ID。
基于此:Get video id from Vimeo url
下面的正则表达式应该可以解决问题:
if (preg_match("/https?:\/\/(?:www\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^\/]*)\/videos\/|album\/(\d+)\/video\/|)(\d+)(?:$|\/|\?)/", $videoLink, $id)) {
$videoId = $id[3];
}
但它不起作用,我终究无法弄清楚原因。
Javascript 和 PHP 中的正则表达式有区别吗/我是否滥用了 preg_match
?我在 Stack Overflow 上查看了一段时间,只是找不到用于从 vimeo url/embed 获取视频 ID 的工作正则表达式。
那里有很多正则表达式,但没有显示它们的实现。
最佳答案
唯一永远正确的答案就是问 Vimeo。 Vimeo 的 oEmbed端点支持每个 Vimeo URL,并返回视频 ID。
oEmbed 端点会随着网站的发展和添加更多内容而保持最新,但这些正则表达式会过时。
此外,他们不可能收集所有的网址。例如 Vimeo 允许自定义视频 url,其中不包含 id。模式(当前)如下:
https://vimeo.com/{user_url}/{video_url}
关于javascript - 如何从 vimeo url/embed 获取视频 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27761690/