当我尝试通过js split解析时,第一个元素是空字符串

我尝试解析ini文件,第一个字符串是空字符串,但其他人没关系:

结构体:

[sensor1] param1: value [sensor2] param1 : value param2 : value 

我的代码是:

  success: function(data) { var parsedArr = data.split(/\s*\[(.*)\]\s*\n/); console.log(parsedArr); } 

结果:

  0: "" 1: "sensor1" 2: "name: brightness temperature↵ 3: "sensor2" 4: "name: brightness temp. IR↵device: HATPRO↵group: length: 5 

好吗? 以及如何解决?

提前致谢 :)

要删除索引0处的空结果:

 var array = 'abcdef'.split('a'); array.shift() // Removes first element from array. 

split()工作原理:
索引0:匹配分隔符之前的所有内容
索引1:匹配给定分隔符的第一个结果
索引2:等等。

由于在第一次匹配之前没有任何内容,只有空字符串,因此数组中的第一个元素是空字符串:)。

有关split()的详细文档,请查看Mozilla-Docs:( https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split

Interesting Posts