在javascript中替换换行符

问题描述

|| 我试图将json对象中的
\\r
\\n
字符实例替换为
<br />
,以显示在网站上。 我试过了:
myString = myString.replace(\"\\\\r?\\\\n\",\"<br />\");
但这似乎无济于事。当我用其他东西替换正则表达式时(例如
\"a\"
,替换按预期工作)。有什么想法为什么对换行符不起作用吗?     

解决方法

尝试这个:
myString = myString.replace(/[\\r\\n]/g,\"<br />\");
更新: 正如Pointy在下面的评论中所述,这将用两个
<br />
替换
\\r\\n
的顺位,正确的正则表达式应为:
myString = myString.replace(/\\r?\\n/g,\"<br />\");
    ,试试
replace(/\\r\\n|\\n/,\'<br />\')
    ,这为我工作:
str = str.replace(/\\\\n|\\\\r\\\\n|\\\\r/g,\'<br/>\');
使用双斜杠     ,CSS:
 white-space: pre-wrap;
是一种效率更高的方法。