我的列表中的元素应该是 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);
}
但它无法正常工作
答案 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