我必须从我的网站上删除很多 font-family:
声明,它们有数百个,我用同一行替换了大部分,只是注释(例如:/* font-family: "Segoe UI","Helvetica","Arial"; */
).
现在,如果我只能搜索未注释的那些来找到剩下的几个就好了。我的第一次尝试清楚地表明我没有完全理解正则表达式:
^(?!(?:/*)).*\s*."font-family:"."*"
语法是 Boost(但只是它的一部分,因为替换是 PCRE 风格)。
最佳答案
你自己差不多搞定了,我刚刚修好了你的tempered greedy token :
^(?:(?!/\*).)*\s*font-family:.*
参见 regex demo
正则表达式解释:
^
- 行首(在 SublimeText 的 S&R 中)(?:(?!/\*).)*
- tempered greedy token匹配除换行符以外的 0 个或多个字符,直到第一个/*
(强制.
匹配换行符,添加(?s)
在^
) 之前\s*
- 零个或多个空白符号font-family:
-font-family:
的文字序列
.*
- 换行符以外的 0 个或多个字符
关于css - 在 Sublime 中搜索所有字体系列 : not preceded by an opening comment 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34354806/