佚名通过本文主要向大家介绍了sublime 正则替换,sublime 正则,sublime text 正则,sublime 正则表达式,sublime css插件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:Sublime 正则的问题,清除没用的css。
描述:
解决方案1:
描述:
我想用正则删掉除 background-image
以外的css。
我自己写了一个 \.(.*)\{(.*)(?:background-image:\ url\(\"(.*)\"\))(.*)\}
但是问题是,如果是整行的css 可以替换,如果有换行符就不行来。
不行
.temp {
height: 789px;
width: 789px;
background-image:url("/img/bg.jpg");
background-color: #fff;
}
可行
.temp { height: 789px; width: 789px; background-image:url("/img/bg.jpg"); background-color: #fff; }
想请教一下大神怎么办,因为内容很多,手动完成基本不靠谱。
解决方案1:
弄了好长时间,想要一次正则解决问题,但是真心能力不够。最后还是用了两次
第一次(把所有selector{含有background-image}的转换为selector{background-image..}):
reg:([^\}\{]*?\{)[^\}\{]*?(background-image[\s\S]*?:[\s\S]*?url\([\s\S]*?\))[\s\S]*?(\})
replace:$1$2$3
第二次(去掉所有不是selector{background-image}的css)
reg:[^\}\{]*?\{(?!background-image)[\s\S]*?\}
replace:
附上我测试的截图:
初始:
第一次完成:
第二次完成:
Find: ^(.*?\{)(?:[^\{\}])*?(background-image.*?;)(?:[^ ]| )*?\}
Repl: \1\2}