Say I have something like this:
var array = [cat,dog,fish];
var string = 'The cat and dog ate the fish.';
I want to clear all those values from a string
var result = string.replace(array,"");
The result would end up being: The and ate the .
Right now, replace()
appears to only be replacing one value from the array. How can I make it so all/multiple values from the array are replaced in the string?
Thanks!
You either create a custom regexp or you loop over the string and replace manually.
array.forEach(function( word ) {
string = string.replace( new RegExp( word, 'g' ), '' );
});
or
var regexp = new RegExp( array.join( '|' ), 'g' );
string = string.replace( regexp, '' );
string.replace(new RegExp(array.join("|"), "g"), "");
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With