如何修剪字符串中心的空白区域?

时间:2017-12-15 14:19:42

标签: javascript

我已动态生成包含数据的JSON文件。某些数据会生成无效json的错误:

SyntaxError: JSON.parse: bad control character in string literal at line 34447 column 24 of the JSON data

我找到了问题,其中一些是

"live_href": "http://   http://google.com",
or
"login_pass": "bourdfthuk.midas.admin   r3adqerds7one",

我已经在开头修复了空格并以.trim()结束,但修饰不会删除字符串中心的空格。

3 个答案:

答案 0 :(得分:4)

使用此

str.replace(/\s/g,'')

g为所有空白实例重复,s代表所有空格,而不仅仅是文字字符。

答案 1 :(得分:1)

我明白你要做什么。在这种情况下,你必须循环遍历你的字符串:

var word = "North Dakota       Blah blah";
word = word.split(' ');
for (var x = 0; x < word.length; x++) {
    if (word[x] === "") {
      word.splice(x, 1);
      x--;
  }
}
word = word.join(' ');
console.log(word);

工作示例:https://jsfiddle.net/85sj4ay6/2/

答案 2 :(得分:0)

正如有人提到的那样,你的json无效,因此你无法将其解析成JSON。但是,如果它有效,它基本上会这样工作:

var myJson = {"login_pass": "bourdfthuk.midas.admin   r3adqerds7one"};

myJson.login_pass = myJson.login_pass.replace(/ /g, '');
console.log(myJson);

工作示例:https://jsfiddle.net/85sj4ay6/