gulp-replace 并没有取代它应该做的一切。
我试图替换<li>,它只是删除其中的一些。当我添加一个列表项时,它被成功地删除了,但是原始文档中的那些项没有被删除。如果我将<li>复制/粘贴到一个新的文件中,这甚至是真的。
test.html是源文档。
<h2>Copied from source:</h2>
<ul>
<li class="Bullets">Athletics</li>
<li class="Bullets">Burglary</li>
</ul>
<h2>Entered in Sublime Text 2</h2>
<ul>
<li>Lorem ipsum dolor sit amet.</li>
<li>Eos ipsam in dolorum odio!</li>
<li>Illum asperiores eligendi, iure tempora.</li>
<li>Reprehenderit blanditiis repudiandae ex eligendi.</li>
</ul>输出的是test.md。请注意,我在崇高文本中输入的<li>被移除,但其他的没有删除。
<h2>Copied from source:</h2>
<ul>
<li class="Bullets">Athletics</li>
<li class="Bullets">Burglary</li>
</ul>
<h2>Entered in Sublime Text 2</h2>
<ul>
Lorem ipsum dolor sit amet.</li>
Eos ipsam in dolorum odio!</li>
Illum asperiores eligendi, iure tempora.</li>
Reprehenderit blanditiis repudiandae ex eligendi.</li>
</ul>gulpfile.js
(function () {
'use strict';
var gulp = require('gulp');
var replace = require('gulp-replace');
var dest = require('gulp-dest');
gulp.task('replace', function(){
gulp.src(['source/*.html'])
.pipe(replace('<li>',''))
.pipe(dest('dest', {ext: '.md'}))
.pipe(gulp.dest('./'));
});
})();任何帮助都是非常感谢的!谢谢!
发布于 2016-04-08 22:09:23
另一个理由是:
.pipe(replace(/<\s*li[^>]*>(.*?)<\s*\/\s*li>/g, '$1')And more ...">参考文献
发布于 2016-04-08 21:59:42
不能在tag函数中传递replace,可以使用字符串或regex调用replace。
要匹配所有li标记,可以尝试使用此regex
.pipe(replace(/\<li.+li\>/g, '')https://stackoverflow.com/questions/36509769
复制相似问题