12345678910111213141516171819202122232425 |
- var utils = require('../utils')
- , nodes = require('../nodes');
- /**
- * Returns string with all matches of `pattern` replaced by `replacement` in given `val`
- *
- * @param {String} pattern
- * @param {String} replacement
- * @param {String|Ident} val
- * @return {String|Ident}
- * @api public
- */
- function replace(pattern, replacement, val){
- utils.assertString(pattern, 'pattern');
- utils.assertString(replacement, 'replacement');
- utils.assertString(val, 'val');
- pattern = new RegExp(pattern.string, 'g');
- var res = val.string.replace(pattern, replacement.string);
- return val instanceof nodes.Ident
- ? new nodes.Ident(res)
- : new nodes.String(res);
- }
- replace.params = ['pattern', 'replacement', 'val'];
- module.exports = replace;
|