I am trying to replace multiple values in a string with JS replace(). The values that I want to replace include line breaks, &, #, etc... I know how to replace one value:
var string = document.getElementById('string').value.replace(\/n/g, '<br>');
However, what is the syntax to include other values. For example, how can I make the below replace functions one function?
var string = document.getElementById('string').value.replace(\/n/g, '<br>')
var string = document.getElementById('string').value.replace('&', '%26');
asked Jan 31, 2012 at 1:40
user175328
3233 gold badges10 silver badges23 bronze badges
1 Answer 1
You could chain it simply.
var string = document.getElementById('string').value.replace(/\n/g, '<br>').replace('&', '%26');
answered Jan 31, 2012 at 2:01
xdazz
161k38 gold badges255 silver badges278 bronze badges
Sign up to request clarification or add additional context in comments.
1 Comment
user175328
Thanks - At first I tried your solution, before posting to this forum, however the second replace was only working for the first occurrence of the value. After your suggestion, I also included forward slashes to &, #, and other symbols, and that did the trick - Thank you
lang-js
{ '&': '%26, ' ': '%20', ... }and then loop through to do the replacements, but I think @xdazz's answer is probably just as good or better.