Препроцессоры типа LESS решают эту проблему, но я не могу использовать его в этом существующем приложении.
Да, вы можете.Ваш проект / фреймворк не должен поддерживать его, и вам не нужно переписывать весь CSS.
Например, синтаксис scss
полностью поддерживает синтаксис CSS, поэтомуВы можете просто переименовать файл .css
в .scss
, и он просто работает.После этого вы можете начать использовать синтаксис scss.
См. http://sass -lang.com /
У инструмента sass / scss есть переключатель --watch
, который позволяет вамчтобы запустить его в фоновом режиме и автоматически преобразовывать ваш файл .scss в файл .css при каждом изменении файла при его разработке:
sass --scss --watch file.scss:file.css
Если вы предпочитаете синтаксис sass
, sass
поставляется сsass-convert
инструмент, который может конвертировать из и в css
, scss
и sass
форматы:
sass-convert --from css --to sass file.css file.sass
Для вашего вопроса регулярного выражения, попробуйте это:
\s*([^\s].*?)\s*{
Это будет соответствовать селектору без пробелов / отступов до и после селектора.