将特殊字符串拆分为数组

时间:2015-12-24 14:37:45

标签: javascript arrays split

我有这个字符串

var string = 'foo , bar , "special1,special2,special3" , "random1,random2" , normal , another item'

我想在,上拆分它并将数据保持在数组中的引号内,即我不想将字符串拆分为引号。所以预期的输出是

var array = ['foo', 'bar', 'special1,special2,special3', 'random1,random2', 'normal', 'another item']

1 个答案:

答案 0 :(得分:2)

您可以通过 , 分隔符拆分字符串,然后从数组的任何元素中删除双引号。

var string = 'foo , bar , "special1,special2,special3" , "random1,random2" , normal , another item';

var array = string.split(' , ').map(function(x) {
  return x.replace(/"/g, "")
});

alert(JSON.stringify(array));