2012-05-10 3 views
0

私はhtmlのコメントの間にすべてを削除しようとしています <!-- regexを使用してPHPの-->を削除します。誰もが手を貸すことができるregex htmlの間のすべてのコメント

$str = preg_replace('/\<!--.*\-->/', '', $str); 
+0

あなたはコメントは複数行することができるのでまたの\ N ' 'を探す必要がありますしてみてください。 –

+1

htmlにregexesを使用しないでください。あなたが行うたびに、Alan Turingは子猫を殺します:http://stackoverflow.com/a/1732454/118068 –

+1

@prajeeshまた、単一のファイルに複数のコメントが存在する可能性があるため、貪欲でないマッチを使用します。例えばこれはregexesが悪い考えである理由です –

答えて

1

preg_replace('/<!--.*-->/sU', '', $str);

+1

これはうまくいくはずです。 – Broncha

+0

-1、これはどのように一致しますか?... some text ... ''? '' non-greedy''パラメータを使う方が良い解決策になるかもしれません。 – Cylian

+0

@Cylian、 'some text'はHTMLコメントにありません。だからマッチするはずがない。ところで、それはすでに 'non-greedy'マッチングを使用しています。 – Rob

関連する問題