2012-02-15 7 views
0

私はxmlファイルを処理することだし、時には 「アイフレームは」私が前に私も「、アウト取得する必要があります タグが と 「スクリプト」がありますXML- parse-it 'PHPストリップのiframeやスクリプトタグ(なしにhtmlentities())

私はいくつかの正規表現を試していますが、間違っています! :(

テスト文字列は:

 $teststring = 'p><iframe src="http://www.facebook.com/plugins/like.php?href=abcdef&layout=standard&show_faces=false&width=450&action=like&colorscheme=dark&height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:35px;" allowtransparency="true"></iframe></p>'; 

//todo clean this up// found this function on net. //more legacy stufff 
    $Rules = array(
     '@<script[^>]*?>.*?</script>@si', // Strip out javascript     
     '@&(cent|#162);@i', // Cent 
     '@&(pound|#163);@i', // Pound 
     '@&(copy|#169);@i', // Copyright 
     '@&(reg|#174);@i', // Registered 
     '@&#(d+);@e', // Evaluate as php 
---> PROBLEM--> '@&lt;iframe [^&lt;]&lt;.*?&lt;\/iframe&gt;@i', 

    ); 

    $Replace = array(
     '', 
     chr(162), 
     chr(163), 
     chr(169), 
     chr(174), 
     'chr()', 
     '', 

    ); 
     //expecting <p></p> 
    $data = preg_replace($Rules, $Replace, $teststring); 


      echo $data; 

答えて

1

ちょうどこの

'@&lt;iframe(?:(?!&gt;).)*&gt;.*?&lt;\/iframe&gt;@i' 
+0

素晴らしい:)感謝をお試しください! – user914584

+0

すばらしい....あなたは火の男です。 :) –

+0

ありがとうたくさん.... :) @レーク –

関連する問題