123456789101112131415161718192021222324252627282930313233 |
- var toString = require('../lang/toString');
- var toArray = require('../lang/toArray');
- /**
- * Replace string(s) with the replacement(s) in the source.
- */
- function replace(str, search, replacements) {
- str = toString(str);
- search = toArray(search);
- replacements = toArray(replacements);
- var searchLength = search.length,
- replacementsLength = replacements.length;
- if (replacementsLength !== 1 && searchLength !== replacementsLength) {
- throw new Error('Unequal number of searches and replacements');
- }
- var i = -1;
- while (++i < searchLength) {
- // Use the first replacement for all searches if only one
- // replacement is provided
- str = str.replace(
- search[i],
- replacements[(replacementsLength === 1) ? 0 : i]);
- }
- return str;
- }
- module.exports = replace;
|