使用JavaScript拆分字符串

6
我有一个字符串,类似于";a;b;c;;e"。注意,在e之前有一个额外的分号。我想把字符串拆分成abc;e。但是它被拆分成了abc;e
我的代码如下:
var new_arr = str.split(';');

我该如何做才能获得想要的结果?

敬礼

3个回答

5

使用正则表达式的负向先行断言:

  ";a;b;c;;e".split(/;(?!;)/)

那就是你所陈述的预期结果。 - Brian Rose
看看我的回答。IE 在删除第一个空元素时实际上是错误的。 - Matthew Flaschen

1

有趣,使用你的代码我得到了["", "a", "b", "c", "", "e"]

var new_array = ";a;b;c;;e".split(/;(?!;)/);
new_array.shift();

这在Firefox中可以正常运行,但我认为这是正确的。您可能需要跨浏览器分割以支持其他浏览器。


-1
var myArr = new Array();

var myString = new String();

myString = ";a;b;c;;e";

myArr = myString.split(";");


for(var i=0;i<myArr.length;i++)
{
    document.write( myArr[i] );
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接