Javascript - 从字符串中删除'\ n'

时间:2016-03-29 03:02:26

标签: javascript regex

var strObj = '\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n{"text": true, ["text", "text", "text", "text"], [{ "text", "text" }]}\n\n\n'

我试图通过剥离\n来清理字符串,但是当我.replace(/\\\n/g, '')时它似乎没有抓住它。我也在谷歌搜索并找到了:

  

..根据JavaScript正则表达式语法,您需要在正则表达式文字中使用两个反斜杠字符,例如/\\//\\/g

但即使我测试表达式只是为了捕获反斜杠,它也会返回false: (/\\\/g).test(strObj)

RegEx测试人员正确捕获\nhttp://regexr.com/3d3pe

3 个答案:

答案 0 :(得分:11)

应该只是

.replace(/\n/g, '')

除非字符串实际上是

'\\n\\n\\n...

它将是

.replace(/\\n/g, '')

答案 1 :(得分:4)

此处无需使用RegEx ,请使用String#trim删除前导和尾随空格。

var strObj = '\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n{"text": true, ["text", "text", "text", "text"], [{ "text", "text" }]}\n\n\n';
var trimmedStr = strObj.trim();

console.log('Before', strObj);
console.log('--------------------------------');
console.log('After', trimmedStr);
document.body.innerHTML = trimmedStr;

答案 2 :(得分:3)

你不需要反斜杠。

var strObj = '\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n{"text": true, ["text", "text", "text", "text"], [{ "text", "text" }]}\n\n\n';

strObj.replace(/\n/g, '');

此代码按预期工作。

  

" {" text":true,[" text"," text"," text",&#34 ; text"],[{" text"," text" }]}"