Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

get id video vimeo with regexp preg_match

I try to get the id video from an url of vimeo, but looking in the source code sometimes it comes like:

http://vimeo.com/XXXXXXXXX

and others like:

http://player.vimeo.com/video/XXXXXXXXX

I just get the id video, but it must be with regExp because I must parse a content from a blog and format like a facebook page does when we insert code html.

This is the regExp that I made:

/vimeo\.com\/(\w+\s*\/?)*([0-9]+)*$/i

Can you help me? I appreciate all your help.

PD: Sorry for my english

like image 314
Anibal Mauricio Avatar asked Jun 17 '13 20:06

Anibal Mauricio


2 Answers

Why not ask Vimeo about the video?

http://vimeo.com/api/oembed.json?url=http%3A//vimeo.com/17892962

The above URL will give you a nice JSON response with lots of useful information, including the video ID and appropriate HTML to embed the video in a page. Just pass your URLs to the oEmbed endpoint as shown above.

Example JSON response (truncated long lines for display purposes)

{
    "type": "video",
    "version": "1.0",
    "provider_name": "Vimeo",
    "provider_url": "http://vimeo.com/",
    "title": "Danny MacAskill - \"Way Back Home\"",
    "author_name": "Dave Sowerby",
    "author_url": "http://vimeo.com/tdave",
    "is_plus": "1",
    "html": "<iframe src=\"http://player.vimeo.com/video/17892962\" …",
    "width": 1280,
    "height": 720,
    "duration": 462,
    "description": "A journey from Edinburgh to Skye where Danny finds …",
    "thumbnail_url": "http://b.vimeocdn.com/ts/399/121/399121670_1280.jpg",
    "thumbnail_width": 1280,
    "thumbnail_height": 720,
    "video_id": 17892962
}

For full information, see their oEmbed documentation.

like image 100
salathe Avatar answered Oct 26 '22 04:10

salathe


http://(player\.)?vimeo\.com(/video)?/(\d+) covers both of your examples, though I'm sure it could be optimised given further URLs.

like image 3
Joel Hinz Avatar answered Oct 26 '22 05:10

Joel Hinz