admin管理员组

文章数量:1431955

I am having trouble removing line breaks from my text in javascript. Here is an example of the data I am working with:

0: "Christian Pulisic"
1: "↵"
2: "From Wikipedia, the free encyclopedia"
3: "↵" 
4: "Christian Pulisic"
5: "↵"
6: "Personal information"
7: "↵"
8: "Full name   Christian Mate Pulisic[1]"

Obviously, the line spaces/breaks or whatever you call them, are polluting the data I am getting.

I cannot get the following function to recognize the line breaks and replace it with a "" which I then can very easily remove from the array through another function I run my data through.

This is the code I am currently using that is not working:

for (i in cleanArray){
    cleanArray[i].replace(/(\r\n|\n|\r)/gm,"")
};

console.log(cleanArray);

I am having trouble removing line breaks from my text in javascript. Here is an example of the data I am working with:

0: "Christian Pulisic"
1: "↵"
2: "From Wikipedia, the free encyclopedia"
3: "↵" 
4: "Christian Pulisic"
5: "↵"
6: "Personal information"
7: "↵"
8: "Full name   Christian Mate Pulisic[1]"

Obviously, the line spaces/breaks or whatever you call them, are polluting the data I am getting.

I cannot get the following function to recognize the line breaks and replace it with a "" which I then can very easily remove from the array through another function I run my data through.

This is the code I am currently using that is not working:

for (i in cleanArray){
    cleanArray[i].replace(/(\r\n|\n|\r)/gm,"")
};

console.log(cleanArray);
Share Improve this question asked Feb 8, 2016 at 3:12 LanceLance 1233 silver badges14 bronze badges 1
  • 1 The replace() method returns a new string, it doesn't change the original one. – nnnnnn Commented Feb 8, 2016 at 3:15
Add a ment  | 

2 Answers 2

Reset to default 3

cleanArray[i].replace(/(\r\n|\n|\r)/gm,"") will return a new string. Furthermore, strings are immutable in JavaScript. Change it to

for(var i = 0; i < cleanArray.length; ++i)
    cleanArray[i] = cleanArray[i].replace(/(\r\n|\n|\r)/gm,"")

Assuming the characters shown as "↵" are actual newlines

Use Array#filter with String#trim

var newArr = arr.filter(el => el.trim());

本文标签: javascriptRemove line breaksspaces from arrayStack Overflow