I am trying to replaces instances of \r
or \n
characters in my json object with <br />
for display on a website.
I tried:
myString = myString.replace("\\r?\\n", "<br />");
But this doesn't seem to do anything. When I replace the regex with something else (like "a"
for instance, the replace works as expected). Any ideas why this isn't working for the newline chars?
Felipe
Try this:
myString = myString.replace(/[\r\n]/g, "<br />");
Update:
As told by Pointy on the comment below, this would replace a squence of \r\n
with two <br />
, the correct regex should be:
myString = myString.replace(/\r?\n/g, "<br />");
try replace(/\r\n|\n/, '<br />')
This worked for me:
str = str.replace(/\\n|\\r\\n|\\r/g, '<br/>');
Using double slash
CSS:
white-space: pre-wrap;
Is a far more eficient method.
来源:https://stackoverflow.com/questions/5664503/replacing-newline-character-in-javascript