avhimkov
1/8/2017 - 6:05 PM

Извлекаем ID видео из ссылки на YouTube У меня была задача, сделать добавление видео в чат. Для этого пользователю достаточно указать ссылку

Извлекаем ID видео из ссылки на YouTube У меня была задача, сделать добавление видео в чат. Для этого пользователю достаточно указать ссылку на видео, затем из мы извлекаем id, который можем передать в embed, и в чате уже вывести видео.

Проблема была в следующем, видов ссылок на видео с ютуба, может быть два (или больше).

Ниже представляю вам решение, и думаю оно не идеально. Кто знает как улучшить, присылайте ревизии или давайте обсудим в комментариях. UPD. Используется версия jestonedev

function youTubeGetId(url) {
    var expression = /^(?:https?:\/\/)?(?:www\.)?(?:youtu\.be[.]?\/|youtube\.com[.]?\/(?:embed\/|v\/|watch\/?\?(?:\S+=\S*&)*v=))([\w-]{11})\S*$/;
    return url.match(expression) ? RegExp.$1 : undefined;
}