Sha256: 6bdb7279a46a5ba27e695492cc569a7894c4697159d9b5285a12d51300a15841
Contents?: true
Size: 951 Bytes
Versions: 69
Compression:
Stored size: 951 Bytes
Contents
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;
Version data entries
69 entries across 69 versions & 2 rubygems