当我尝试通过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 )