gulp uncss - 通过正则表达式忽略将不起作用

gulp uncss - ignore via regex won´t work

我正在尝试为我的 gulp 工作流程添加 uncss。

要忽略一些通过 javascript 添加的 classes,例如,我用 "ignore" 声明这些 classes(在我的例子中,我是试图从 jquery 插件 magnific-popup 中取消 css css。

我的工作流程看起来像这样并使用正则表达式匹配所有 magnific-popup css:

gulp.task("uncsstask", () => {
gulp.src('original-mfp.css')    
.pipe(uncss({
    html:
    [
        'page.html',
    ],
    ignore: [            
        /\.mfp-*.*/g,
    ]
}))
.pipe(gulp.dest('new'));
});

发生的事情是 class

.mfp-container

进入新的 css 文件,但是 class

.mfp-content

没有。

我用各种正则表达式检查器检查了正则表达式语句。

将 'm' 标志添加到您的正则表达式(否则它会在第一次匹配后停止):

    /\.mfp-*.*/gm,

为什么第一个 * 在那里? “.mfp”后是否有时有 0 个或多个破折号?

[编辑] :因此,在更仔细地查看文档后,似乎不需要正则表达式标志,并且 OP 表示已解决问题,并结合了我的其他建议,即正则表达式中有一个不必要的 *。我已经编辑了我的答案,因此这些信息现在位于答案的正文中,而不仅仅是评论中。所以使用:

/\.mfp-.*/