Replaces strings in files by using a string, a regex pattern, or an array of either.
yarn add --dev gulp-pattern-replace
npm install --save-dev gulp-pattern-replace
var replace = require('@yodasws/gulp-pattern-replace');
gulp.task('replace_1', function() {
gulp.src(["./config.js"])
.pipe(replace(new RegExp('@env@', 'g'), 'production'))
.pipe(gulp.dest('./build/config.js'))
});
gulp.task('replace_2', function() {
gulp.src(["./index.html"])
.pipe(replace(/version(={1})/g, '$1v0.2.2'))
.pipe(gulp.dest('./build/index.html'))
});
gulp.task('replace_3', function() {
gulp.src(["./config.js"])
.pipe(replace(/foo/g, function () {
return 'bar';
}))
.pipe(gulp.dest('./build/config.js'))
});
gulp.task('replace_1', function() {
gulp.src(["./config.js"])
.pipe(replace('@env@', 'production'))
.pipe(gulp.dest('./build/config.js'))
});
gulp.task('replace_1', function() {
gulp.src(["./config.js"])
.pipe(replace('@env@', function () {
return argv.env === 'dev' ? 'dev' : 'production';
}))
.pipe(gulp.dest('./build/config.js'))
});
gulp.task('replace_2', function() {
gulp.src(["./config.js"])
.pipe(replace('environment', function (pattern) {
return pattern + '_mocked';
}))
.pipe(gulp.dest('./build/config.js'))
});
gulp.task('lint-js', () => {
gulp.src(["./config.js"])
.pipe(replace([/(if|for|switch|while)\(/g, '$1 ('))
.pipe(gulp.dest('./build/config.js'));
});
gulp.task('lint-js', () => {
gulp.src(["./config.js"])
.pipe(replace([
[/(if|for|switch|while)\(/g, '$1 ('],
['function (', 'function('],
])
.pipe(gulp.dest('./build/config.js'));
});
var options = {
pattern: /@env@/g
replacement: 'dev',
logs: {
enabled: false
}
};
gulp.task('replace_1', function() {
gulp.src(["./config.js"])
.pipe(replace(options)
.pipe(gulp.dest('./build/config.js'))
});
Type: Object
Type: String
or RegExp
The string to search for.
Type: String
or Function
The replacement string or function. Called once for each match. Function has access to regex outcome (all arguments are passed).
More details here: [MDN documentation for RegExp] and [MDN documentation for String.replace].
Type: Boolean
or Object
Output logs.
true
is the same as:
logs: {
enabled: true,
notReplaced: false,
}
Type: Boolean
, Default: true
Output logs.
Type: Boolean
, Default: false
Output "not replaced" logs.
Type: String
or RegExp
The string to search for.
Type: String
or Function
The replacement string or function. Called once for each match. Function has access to regex outcome (all arguments are passed).
Type: Object
Same as above, but without properties pattern
or replacement