romasovest
@romasovest
~

Как выделить все :focus в css с помощью регулярного выражения?

В bootstrap стилях очень много :focus, что очень мешает многим. Я решил с помощью регулярки выделить все :focus стили и заменить их на .focus-must-die, но оказалось написать такую регулярку не так просто.

Итак, как написать регулярку, которая захватит все стили :focus в css-файле?
  • Вопрос задан
  • 44 просмотра
Пригласить эксперта
Ответы на вопрос 2
bingo347
@bingo347
Crazy on performance...
С регулярками на весь файл скорее всего будут проблемы, много чего может поломаться.
Я бы сделал так:
1. поставил бы модуль https://www.npmjs.com/package/css
2. спарсил бы этим модулем css файл в AST дерево
3.1. пробежался бы по всем селекторам в AST дереве в поисках селектора с :focus
3.2. при нахождении нужного селектора, сделал бы что-то с ним (изменил, вырезал (если последний селектор в правиле, нужно вырезать все правило), что-то еще по вкусу)
4. собрал модулем css AST дерево обратно в css код и записал бы в файл
Ответ написан
Комментировать
Zoro
@Zoro
Примерно так

find /path -type f - iname *.css -exec sed -i -r 's/.focus/.focus-must-die/g' {} \;

если я правильно понял, что ты хочешь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы