ссылка на YouTube регулярное выражение - PullRequest
2 голосов
/ 28 декабря 2010

я пытаюсь заставить это работать для всех ссылок на YouTube, которые работают, кроме youtube.com/v/videoid

только смотреть? V = работает с этим регулярным выражением, любая помощь очень благодарна.

/http:\/\/(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/watch(?:\?|#\!)v=)([\w-]{11}).*/i

Ответы [ 4 ]

7 голосов
/ 28 декабря 2010

Веб-сайт Библиотека регулярных выражений является хорошим источником для этого. Попробуйте следующую ссылку: http://www.regexlib.com/Search.aspx?k=youtube

5 голосов
/ 28 декабря 2010
/((http:\/\/)?(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/v\/)([\w-]{11}).*|http:\/\/(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/watch(?:\?|#\!)v=)([\w-]{11}).*)/i
3 голосов
/ 24 апреля 2012

это мой первый вклад, надеюсь, это поможет.

$url = "https://www.youtube-nocookie.com/embed/lCpaCAfhCH4";

if (preg_match("/^((https?:\/\/)?(w{0,3}\.)?youtu(\.be|(be|be-nocookie)\.\w{2,3}\/))((watch\?v=|v|embed)?[\/]?(?P<video>[a-zA-Z0-9-_]{11}))/si", $url, $matches)) {

echo $matches['video'];

}

Это регулярное выражение работает с любым форматом URL-адреса YouTube (длинный, короткий, встроенный, безопасный и т. Д.)

Спасибо!

0 голосов
/ 03 июля 2014

сделано с использованием регулярного выражения. Это лучший способ получить идентификатор видео

<?php
$url = "http://www.youtube.com/watch?v=KkMDCCdjyW8&feature=relate";
parse_str( parse_url( $url, PHP_URL_QUERY ), $my_array_of_vars );
echo $my_array_of_vars['v'];    
  // Output: KkMDCCdjyW8
?>

здесь работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...