从Array中删除多余的空格

时间:2014-05-31 06:20:35

标签: javascript arrays

我的列表中的元素应该是 A1,A2,A3,A4

如果用户输入A1,A2,A3,A4 ,,,,,, 要么 A1,A2 ,, A3,A4,A5 ,, 要么 A,B ,,,, V ,,,,,,,,, ddfd ,,,,,,,,

应该考虑为

A1,A2,A3,A4

我写的逻辑是

if(valueText !== null) {    alert("Value Text..." + valueText);    
                    valueList = valueText.split(",");

                    for (var i = 0; i < valueList.length; i++)
                    {
                        if (valueList[i] == "")
                        {
                            valueList.splice(i, 1);
                            alert("ValueList inside for if.."+valueList);
                        }
                    }
                    alert("ValueList.." + valueList);
            }

但它无法正常工作

2 个答案:

答案 0 :(得分:2)

您可以使用match&amp; join函数: -

var str = "A1,A2,,,A3,A4,,A5,,";
strnew = str.match(/[^ ,]+/g).join(',');
//Output--> A1,A2,A3,A4,A5

希望这会对你有帮助......

答案 1 :(得分:1)

您可以使用正则表达式执行此操作,例如:

var txt = 'A1,A2,,,A3,A4,,A5,,'

var res = txt.replace(/(,)\1*/g, ',').replace(/,$/, '');
//^ A1,A2,A3,A4,A5