PHP preg_replace для удаления комментариев в стиле MS Office HTML - PullRequest
1 голос
/ 27 сентября 2010

Я ищу способ удалить комментарии в стиле MS Office и все, что между ними. Они имеют форму:

<!--[if gte mso 10]>

блаблабла блаблабла

<![endif]-->

или

<!--[if gte mso 9]>

блаблабла блаблабла

<![endif]-->

Проблема, с которой я сталкиваюсь, заключается в том, что я не хочу удалять ВСЕ комментарии из HTML. Только эти комментарии в стиле MSO. Есть идеи?

1 Ответ

1 голос
/ 27 сентября 2010

попробуйте

preg_replace('/<!--\s*\[if[^\]]*]>.*?<!\[endif\]-->/i', '', $string);

удалит все <!--[if ...]>....<![endif]--> комментарии

...