【问题标题】:Removing return carriage from an array - Javascript从数组中删除回车 - Javascript
【发布时间】:2015-01-28 06:06:43
【问题描述】:

我有如下所示的数组:

 ["↵", "Oh", "yeah,", "did", "we", "mention", "it’s", "free?↵"]

有没有办法可以从字符串和数组中删除 ↵?
我试过了

str.replace(/(\r\n|\n|\r)/gm,"");

这没有帮助。

【问题讨论】:

  • this question的可能重复
  • 您实际上是在追求 还是CR 和LF?另外,您是要删除整个数组元素(包含该字符)还是只从数组内的字符串中删除该字符?
  • 这只是众多数组之一。我不想单独删除那个特定的数组。我做了一个字符串拆分以返回一个数组。它是一个包含该字符的字符串,
  • 已经想到你正在这样做。解决方案:然后拆分/\s+/上的字符串,bob是你的叔叔:)

标签: javascript html-parsing


【解决方案1】:

只需在/\s+/ 上拆分您的字符串,您就无需再执行此操作了。

var str='\nOh yeah, did we mention it’s free?\n';
var arr=str.split(/\s+/);

注意:您可能想要从弦拳的开头和结尾修剪\s+。 (老)不支持trim()的浏览器可以使用:

arr=str.replace(/^\s+|\s+$/g, '').split(/\s+/);

严格回答您的问题如何从数组中的字符串中删除“回车”:

// you have:
var str= '\nOh yeah, did we mention it’s free?\n';
var arr= str.split(' ');

// no function needed, a simple loop will suffice:
for(var L=arr.length; L--; arr[L]=arr[L].replace(/[\n\r]/g, ''));

请注意(在您的示例中已显示为数组项 0),您的数组中可能会出现一些空字符串(未定义)。

【讨论】:

  • 在这种情况下,我需要拆分空格字符和 /\s+/
  • 你这是什么意思? /\s+/ 包含空格。
  • 没问题。额外说明:您可能想要从弦拳的开头和结尾修剪\s+。不支持trim()的浏览器可以使用:arr=str.replace(/^\s+|\s+$/g, '').split(/\s+/);
【解决方案2】:

您可以使用String.prototype.trim 结合Array.prototype.filter 来清除空字符串中的数组,以删除虚假值。例如:

var arr = ["\n", "", "Oh", "yeah,", "did", "we", "mention", "it’s", "free?\n"]

// check array before
alert(JSON.stringify(arr));

arr = arr.map(function(el) {
    return el.trim();
}).filter(Boolean);

// after cleaning up
alert(JSON.stringify(arr));

【讨论】:

    【解决方案3】:

    试试这个:

    function removeReturn(ary){
      var b = [], a = [];
      for(var i=0,l=ary.length; i<l; i++){
        var s = ary[i].split('');
        for(var n=0,c=s.length; n<c; n++){
          if(s[n] === '\u021B5')s[n] = '';
        }
        b.push(s.join(''));
      }
      for(var i=0,l=b.length; i<l; i++){
        var x = b[i];
        if(x !== '')a.push(x);
      }
      return a;
    }
    

    【讨论】:

      猜你喜欢
      • 2016-05-13
      • 2015-12-10
      • 2018-03-18
      • 2018-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-21
      • 1970-01-01
      相关资源
      最近更新 更多