JSFiddle - React, Tailwind, and code Playground

HTML

<strong>Result:</strong>
<div id="result"></div>

CSS

strong {font-weight:bold}

JavaScript

function parseVideoURL(url) {

    var provider = url.match(/http:\/\/(:?www.)?(\w*)/)[2],
        id;

    if(provider == "youtube") {
        
        id = url.match(/http:\/\/(?:www.)?(\w*).com\/.*v=(\w*)/)[2];
    } else if (provider == "vimeo") {
        
        id = url.match(/http:\/\/(?:www.)?(\w*).com\/(\d*)/)[2];
    } else {
        throw new Error("parseVideoURL() can only handle YouTube and Vimeo URLs ")    
    }
    return {
        provider : provider,
        id : id
    }
}


var result = document.getElementById("result");
var video = parseVideoURL("http://www.youtube.com/watch?v=PQLnmdOthmA&feature=feedrec_grec_index");
result.innerHTML = "Provider: " + video.provider + "<br>ID: " + video.id;

var video = parseVideoURL("http://vimeo.com/22080133/?asdasdjk");

result.innerHTML += "<br>--<br>Provider: " + video.provider + "<br>ID: " + video.id;