首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何替换吞咽中的几行

如何替换吞咽中的几行
EN

Stack Overflow用户
提问于 2018-12-03 11:19:44
回答 1查看 137关注 0票数 0

我在用gulp-replace替换几行代码时遇到了问题。下面是我需要删除的代码

代码语言:javascript
复制
@font-face {
  font-family: Vaadin-Icons;
  src: url(../valo/fonts/vaadin-icons/Vaadin-Icons.eot);
  src: url(../valo/fonts/vaadin-icons/Vaadin-Icons.eot?#iefix) format("embedded-opentype"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.woff) format("woff"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.ttf) format("truetype"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.svg#icomoon) format("svg")
}

我需要将上面的代码片段替换为空白。

下面是我的感想:

代码语言:javascript
复制
replace = require('gulp-replace'),

gulp.task('minify-core-styles', function() {
    gulp.src(PATH_CSS_CORE)
        .pipe(replace(vaadin_icon, ' '))
        .pipe(autoprefixer({ browsers: AUTOPREFIXER_BROWSERS }))
        .pipe(concat('styles.css'))
        .pipe(min())
        .pipe(gulp.dest(PATH_CSS_CORE_DEST));
});

我一口气创建了一个名为vaadin_icon的变量,它包含字符串。

代码语言:javascript
复制
var vaadin_icon = '@font-face {' +
    'font-family: Vaadin-Icons;' +
    'src: url(../valo/fonts/vaadin-icons/Vaadin-Icons.eot);' +
    'src: url(../valo/fonts/vaadin-icons/Vaadin-Icons' +
    '.eot?#iefix) format("embedded-opentype"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.woff) format("woff"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.ttf) format("truetype"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.svg#icomoon) format("svg")' +
    '}';

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-12-03 12:49:32

您没有考虑到@font-face声明中的换行符或制表符/空格。所以试试吧:

代码语言:javascript
复制
var vaadin_icon = '@font-face {\r\n' +
  '  font-family: Vaadin-Icons;\r\n' +
  '  src: url(../valo/fonts/vaadin-icons/Vaadin-Icons.eot);\r\n' +
  '  src: url(../valo/fonts/vaadin-icons/Vaadin-Icons' +
  '.eot?#iefix) format("embedded-opentype"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.woff) format("woff"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.ttf) format("truetype"), url(../valo/fonts/vaadin-icons/Vaadin-Icons.svg#icomoon) format("svg")\r\n' +
'}';

注意:我不知道您使用的是哪种操作系统,因此您可能需要尝试使用除\r\n之外的其他工具来换行。您也可以使用模板文字来实现这一点。

代码语言:javascript
复制
var fontFaceRegEx = /@font-face.*(.*\r\n)*}/g;

然后在替换管道中使用:

代码语言:javascript
复制
.pipe(replace(fontFaceRegEx, ' '))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53587022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档