How can replace values as array by replace in javascript.
I want done replace numbers (for example) together. how is it?
1 -replace whit-> 11
2 -replace whit-> 22
DEMO: http://jsfiddle.net/ygxfy/
<script type="text/javascript">
var array = {"1":"11", "2":"22"}
var str="13332";
document.write(str.replace(array));
</script>
You have to create a pattern, using a RegEx, and then pass it to the .replace method.
var array = {"1":"11", "2":"22"}; // <-- Not an array btw.
// Output. Example: "1133322"
document.write( special_replace("13332", array) );
function special_replace(string_input, obj_replace_dictionary) {
// Construct a RegEx from the dictionary
var pattern = [];
for (var name in obj_replace_dictionary) {
if (obj_replace_dictionary.hasOwnProperty(name)) {
// Escape characters
pattern.push(name.replace(/([[^$.|?*+(){}\\])/g, '\\$1'));
}
}
// Concatenate keys, and create a Regular expression:
pattern = new RegExp( pattern.join('|'), 'g' );
// Call String.replace with a regex, and function argument.
return string_input.replace(pattern, function(match) {
return obj_replace_dictionary[match];
});
}
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