将\ n替换为\ n,将\ r \ n替换为<j>中的<p> </p>

时间:2010-03-05 21:23:28

标签: javascript string

我需要JS删除所有HTML代码,然后将换行符替换为</p><p>换行符和换行符<br/>。字符串值来自textarea,我理解Linux,Mac和Windows所有格式换行都不同,所以我需要考虑到这一点。谢谢!

2 个答案:

答案 0 :(得分:20)

\ n和\ r \ n是等效的。 Linux使用前者,Windows使用后者。

你要做的是用<p></p>替换\ n \ n和\ r \ n \ r \ n的所有情况,用<br /> <简单地替换为\ n或\ r \ n的情况/ p>

result = "<p>" + text + "</p>";
result = result.replace(/\r\n\r\n/g, "</p><p>").replace(/\n\n/g, "</p><p>");
result = result.replace(/\r\n/g, "<br />").replace(/\n/g, "<br />");

这假设你的文字中没有html。

答案 1 :(得分:1)

我认为

value.replace(/\\n\\n/g, "</p><p>");
value.replace(/\\n/g, "<br/>");

会做到这一点。