Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как вырезать код роликов youtube из ссылки
 
 автор: tetron   (11.09.2012 в 17:33)   письмо автору
 
 

Есть такие ссылки:

http://youtu.be/b3HOC-3oxjg
http://youtube.com/watch?v=b3HOC-3oxjg

Как мне сохранить в массив "b3HOC-3oxjg" в массив?

Знаю что нужно использовать preg_match - на как составить шаблон если значение неизвестно, (последние символы постоянно меняются - но их точно 11 - не больше и не меньше) ?

  Ответить  
 
 автор: Deed   (11.09.2012 в 18:56)   письмо автору
 
   для: tetron   (11.09.2012 в 17:33)
 


<?
$video_path
="http://www.youtube.com/watch?v=4PBa5juYwaA&feature=g-vrec";

if(
preg_match("/^(?:https?:\/\/)?(?:www\.)?youtube\.com\/watch\?(?=.*v=((\w|-){11}))(?:\S+)?$/",$video_path,$out)){
        echo 
"OK result - ".$out[1]."!";
}
?>

  Ответить  
 
 автор: tetron   (13.09.2012 в 10:23)   письмо автору
 
   для: Deed   (11.09.2012 в 18:56)
 

Низкий поклон, благодаря вашему примеру понял регулярные выражение.

  Ответить  
 
 автор: Deed   (13.09.2012 в 18:59)   письмо автору
 
   для: tetron   (13.09.2012 в 10:23)
 

Не за что.
Обязательно скачайте и установите вот это: http://gskinner.com/RegExr/desktop/RegExr.air

  Ответить  
 
 автор: tetron   (15.09.2012 в 20:47)   письмо автору
 
   для: Deed   (13.09.2012 в 18:59)
 

расскажите по подробней что это за программа?

  Ответить  
 
 автор: Deed   (16.09.2012 в 20:53)   письмо автору
 
   для: tetron   (15.09.2012 в 20:47)
 

Для проверки регулярок. Самая, на мой взгляд, лучшая.

  Ответить  
 
 автор: dirol   (14.12.2012 в 22:09)   письмо автору
 
   для: tetron   (11.09.2012 в 17:33)
 

может пригодится

if (preg_match('%(?:youtube(?:-nocookie)?\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/ ]{11})%i', $url, $match)) {
    $video_id = $match[1];
}


Вот пример из URL

http://youtu.be/dQw4w9WgXcQ ...
http://www.youtube.com/embed/dQw4w9WgXcQ ...
http://www.youtube.com/watch?v=dQw4w9WgXcQ ...
http://www.youtube.com/?v=dQw4w9WgXcQ ...
http://www.youtube.com/v/dQw4w9WgXcQ ...
http://www.youtube.com/e/dQw4w9WgXcQ ...
http://www.youtube.com/user/username#p/u/11/dQw4w9WgXcQ ...
http://www.youtube.com/sandalsResorts#p/c/54B8C800269D7C1B/0/dQw4w9WgXcQ ...
http://www.youtube.com/watch?feature=player_embedded&v=dQw4w9WgXcQ ...
http://www.youtube.com/?feature=player_embedded&v=dQw4w9WgXcQ ...

Также работает на Youtube-nocookie.com URL с вышеперечисленными вариантамиов.
Также будет выцеплять ID из URL в коде встраивания (объекта IFRAME и тэги)

  Ответить  
 
 автор: classic1698   (11.04.2017 в 19:27)   письмо автору
 
   для: dirol   (14.12.2012 в 22:09)
 

Здравствуйте!
Спасибо работает безупречно.
А не пробовали таким же образом "резать ссылки" с Vimeo https://player.vimeo.com/video/90525528.
У них просто разные id на видео и на скриншот.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования