Я создаю генератор CSS в PHP, который использует файлы CSSX (да, это моя идея) (со специальным синтаксисом). Одной из особенностей являются «короткими комментариями»:Замена // комментариев с/* comments */в PHP
body
{
font-family: Georgia; //I really like this font!
}
Теперь я хочу, чтобы заменить этот комментарий с/* ... */комментарием, поэтому вывод таков:
body
{
font-family: Georgia; /*I really like this font!*/
}
Как я могу сделай это? Спасибо,
P.S. Полный CSSX-файл считывается в одну строковую переменную.
P.P.S Ответ дан. Чтобы исправить URL ('// сервер/etc.cssx') проблема, используйте:
$file = preg_replace('~[^"\'\(]//([^\r\n]*)[^"\'\)]~', '/*$1*/', $file);
Удивительный это сработало! – 2009-11-19 15:59:53
@Koning: они просто определяют разделитель для регулярного выражения. Вы можете использовать много символов, а 'preg_replace' будет считать, что первым является разделитель, который вы хотите использовать. «Стандартным» разделителем является '/', но тогда вам придется избегать ваших '/' 's в шаблоне. – jheddings
Хммм, переместите новую строку, и я думаю, что вы настроены: http://codepad.org/uNV7jQmb – Kzqai