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

标签 javascript jquery ini

我尝试解析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(1) 的工作原理:
索引 0:匹配分隔符之前的所有内容
索引 n:匹配分隔符之后直到下一次出现匹配分隔符或 endofstring 的第 n 个结果。

由于第一个匹配项之前没有任何内容,并且第一个匹配项正好发生在字符串的开头,因此数组中的第一个元素是空字符串。

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

关于javascript - 当我尝试通过 js split 解析时,第一个元素是空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22044461/

相关文章:

javascript - 处理哈希数据的最佳算法

jquery - 完整日历未加载正在传递的事件 - 没有错误

c++ - 如何使用 QSettings 在 ini 部分写入文件路径

javascript - 如何在 React 中设置嵌套数组的状态(已编辑)

javascript - 帮助一个简单的正则表达式

javascript - Jquery 验证 if/else errorplacement 和 plus placement in div

javascript - jQueryscrollTop 的不同替代品?

javascript - jQuery 中的伪选择器

php - Azure .user.ini 不工作

ini - 有没有办法验证 .env 文件?