2011-11-08 15 views
1

HI Guysなぜこのreg.expは機能しませんか? 'TEST'はXXXに置き換えてください。PHP正規表現(テキストを置き換える)

<?php 
$Rules = array ('@<script[^>]*?>.*?</script>@si', 
      '@(TEST);[email protected]'); 
$Replace = array ('',  
       'XXX' 
      ); 

     $data ="this is a TEST string"; 
     $data = preg_replace($Rules, $Replace,$data); 
     echo $data; 

?> 
+0

このようなタスクのために 'str_replace'を使用してください。それは速いです – diEcho

+0

ありがとう、しかし、それは関数のスナップショットをjsutですので、reg.exprを使用する必要があります – user914584

答えて

0

あなたの正規表現は、+の一つ以上続くリスタ文字列TESTに一致する(TEST);+です。

$dataの文字列には;が存在しないため、一致することはありません。

+0

'@(TEST); + @ e' - > @(KOOS)@i – user914584