2012-04-28 54 views
0

這是我的HTML代碼:如何在PHP(正則表達式)改造這個IMG這樣的代碼

<img src="http://img.youtube.com/vi/ErIRt52MOkE/0.jpg" class="mceItem" alt="ErIRt52MOkE"/> 

而且我要改造這個代碼:

<iframe title="YouTube video player" width="640" height="390" src="http://www.youtube.com/embed/ErIRt52MOkE" frameborder="0" allowfullscreen></iframe> 

這是我的模式: (Message: preg_replace() [function.preg-replace]: Unknown modifier 'v'

<img(?=[^>]+?class="mceItem")(?=[^>]+?alt="[\w]+?")[^>]+?img.youtube.com/vi/([\w]+?)/0.jpg[^>]*?/> 
+0

是的,那是可能的。還有其他類似的問題。使用搜索功能來查找其他提示。然後用你所做的嘗試來更新你的問題,所以它會變得不那麼寬泛,或者是一個簡單的編碼查詢。 – mario 2012-04-28 21:53:45

+0

我無法做到這一點:( – Arlong 2012-04-28 22:32:31

+1

那麼,逃避[定界符](http://php.net/manual/en/regexp.reference.delimiters.php),或者使用'#'而不是'/'。 – mario 2012-04-29 00:10:19

回答

0

試試這個: -

<?php 
    preg_match_all('%youtube\.com\/vi\/([^\/]+)%','<img src="http://img.youtube.com/vi/ErIRt52MOkE/0.jpg" class="mceItem" alt="ErIRt52MOkE"/>',$matches); 

    print_r($matches); 

    $outputStr = '<iframe title="YouTube video player" width="640" height="390" src="http://www.youtube.com/embed/'.$matches[1][0].'" frameborder="0" allowfullscreen></iframe>'; 

    echo $outputStr; 
?> 
相關問題