const replace = require('{%= name %}');
const input = 'foo Foo FOO foo';
// Uses "gi" RegExp flags by default
console.log(replace(input, 'foo', 'bar')); //=> bar Bar BAR bar
console.log(replace(input, '[fF]oo', 'bar', 'g')); //=> bar Bar FOO bar
console.log(replace(input, 'foo', 'bar', 'i')); //=> bar Foo FOO foo
console.log(replace(input, 'foo', 'bar', '')); //=> bar Foo FOO foo
Signature
replace(input, substring, replacement[, flags]);
Params
input
(String) The string to modifysubstring
(String) The "old" string to replacereplacement
(String) The "new" string to use as a replacement.flags
(String) Optional RegExp flags to use. By default,gi
is used.
const input = `
.alphaconfig.json
AlphaWord
Alpha
ALPHA_FOO_BAR
`;
// Replace all occurrences of "alpha" with "beta"
console.log(replace(input, 'alpha', 'beta'));
// Replace only the first occurrence of "alpha" with "beta"
console.log(replace(input, 'alpha', 'beta', 'i'));
// Replace only when surrounded by word boundaries (capture group is unecessary and is only for clarity)
console.log(replace(input, '\\b(?:alpha)\\b', 'beta'));
// Replace all occurrences of "alpha" (optionally followed by "config") with "beta"
console.log(replace(input, 'alpha(config)*', 'beta'));
// Replace all occurrences of "alpha" (optionally followed by zero or more characters that are
// not a space, underscore, or dot)
console.log(replace(input, 'alpha([^\\s_.]*)', 'beta'));
Results in the following:
.betaconfig.json
BetaWord
Beta
BETA_FOO_BAR
.betaconfig.json
AlphaWord
Alpha
ALPHA_FOO_BAR
.alphaconfig.json
AlphaWord
Beta
ALPHA_FOO_BAR
.beta.json
BetaWord
Beta
BETA_FOO_BAR
.beta.json
beta
Beta
BETA_FOO_BAR