`gulp-replace` заменяет только некоторые, но не все цели
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>
То, что я ввел в Sublime Text, удаляется, а остальные нет.
<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('./'));
});
})();
Любая помощь приветствуется! Спасибо!
2 ответа
Решение
2016-04-08 22:09
Ты не пройдешь tag
в replace
функция, replace
можно вызвать с помощью строки или регулярного выражения.
Чтобы соответствовать всем li
теги, которые вы можете попробовать использовать это regex
:
.pipe(replace(/\<li.+li\>/g, '')