2011-12-29 2 views
0

я этот кодpreg_match и preg_replace для YouTube URL

preg_match_all('%(?:youtube\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/ ]{11})%i', $asd, $match); 

найти юность ключ URLs как

<a href="http://www.youtube.com/watch?v=">http://www.youtube.com/watch?v=ZiJRPREeQ1Q</a> 
     <br /> 
     <a href="http://www.youtube.com/watch?v=GaEZgqxPHLs&feature=related">http://www.youtube.com/watch?v=GaEZgqxPHLs&feature=related</a> 

эту работу хорошо, чтобы найти код ZiJRPREeQ1Q и GaEZgqxPHLs, теперь я хочу, чтобы заменить все HTML строка с новым кодом

хочу использовать

preg_replace 

найти всю юность URL

<a href="*">*</a> 

на новый код, как я могу это сделать?

-------------- -------------- добавляет

после того, как я получаю код YouTube из URL с помощью preg_math_all я использовал этот код для извлечения кодов

foreach($match[1] as $youtube){ 
      // $youtube; // this handle the youtube code 
      $match = ""; // what can i write here relative to $youtube ? 
      $str .= preg_replace($match, 'new code',$content); // $content handle the whole thread that contain the youtube url <a href=*>*</a>         
     } 

единственное, что мне нужно, что это регулярное выражение, которое я могу использовать для замены YouTube код

+1

См. [Здесь] (http://stackoverflow.com/questions/2129443/any-preg-match-to-check-if-a-url-is-a-youtube-vimeo-dailymotion-video-link) и [здесь] (http://stackoverflow.com/questions/1416425/preg-replace-preg-match-for-href-in-html-link) – sooper

+1

Если вы хотите использовать preg_replace, то у вас будет чтобы узнать, как это работает. Это вполне выполнимо, но не подходит для новичков. (Если вам нужен только какой-то готовый код, поиск может появиться.) – mario

+0

я обновляю свой пост, читаю его –

ответ

1
$html = file_get_contents($url); //or curl function  
$re="<link itemprop=\"embedURL\" href=\"(.+)\">"; 
preg_match_all("/$re/siU", $html, $matches); 
$youtube = $matches[1][0]; 

или

$html = file_get_contents($url); //or curl function  
$re="<link itemprop=\"url\" href=\"(.+)\">"; 
preg_match_all("/$re/siU", $html, $matches); 
$youtube = $matches[1][0]; 
+0

ЭТО не заменит !! i wanna replcae html-код youtube от до в другой код, например $ new –

+0

Вы могли бы, например, это попробовать? –

+0

Я обновляю свой пост, читаю его –

Смежные вопросы