在Dreamweaver中正则表达式注释掉css

时间:2014-02-10 05:21:21

标签: html css regex

我正在尝试将模板从响应转换为非响应(我知道,似乎很疯狂但是......)所以模板开发人员告诉我注释掉或删除文件中的所有@media css。所以我正在寻找一个正则表达式,它将通过一个css文件找到:

  

@media {some css here}}并将其替换为

     

/ * @media {与上述相同的css}} * /

我尝试过在网上类似的一些例子的变化,但无济于事。

非常感谢, 休斯敦

1 个答案:

答案 0 :(得分:0)

这个正则表达式应该可以解决问题:

@media.*?{\s*(?:.*?{.*?}\s*)*?}

然后使用以下字符串进行替换:

/* $0 */

此外,要使此正则表达式起作用,必须使用正则表达式的“点匹配全部”选项。在大多数语言中,这是通过/s修饰符完成的(或者在Notepad ++中有一个复选框选项,表示“。匹配换行符”)。

如果您使用Notepad ++之类的东西来执行替换,您将需要转义版本:

@media.*?{\s*(?:.*?\{.*?\}\s*)*?\}

正则表达式解释:

@media.*?{部分匹配媒体查询的左括号。然后在内部CSS开始之前有\s*来匹配可能的空格。接下来,(?:.*?{.*?}\s*)*?将匹配所有内部CSS。最后,媒体查询的结尾与右括号}匹配。