HTML-Kommentare mit PHP entfernen, aber Bedingungen verlassen
Ich verwende derzeit PHP und einen regulären Ausdruck, um alle HTML-Kommentare von einer Seite zu entfernen. Das Skript funktioniert gut ... ein bisschen zu gut. Alle Kommentare werden entfernt, einschließlich meiner bedingten Kommentare in der. Folgendes habe ich:
<code><?php function callback($buffer) { return preg_replace('/<!--(.|\s)*?-->/', '', $buffer); } ob_start("callback"); ?> ... HTML source goes here ... <?php ob_end_flush(); ?> </code>
Da mein regulärer Ausdruck nicht zu heiß ist, kann ich nicht herausfinden, wie das Muster geändert werden kann, um bedingte Kommentare auszuschließen, z.
<code><!--[if !IE]><!--> <link rel="stylesheet" href="/css/screen.css" type="text/css" media="screen" /> <!-- <![endif]--> <!--[if IE 7]> <link rel="stylesheet" href="/css/ie7.css" type="text/css" media="screen" /> <![endif]--> <!--[if IE 6]> <link rel="stylesheet" href="/css/ie6.css" type="text/css" media="screen" /> <![endif]--> </code>
Prost