gpt4 book ai didi

Javascript 将字符串拆分为数组字典(键 -> 值)(正则表达式)

转载 作者:行者123 更新时间:2023-11-30 14:37:58 25 4
gpt4 key购买 nike

目的是在 JavaScript 中将字符串解析为数组字典。

例如,这可能是需要解析的字符串

“k=23:3/24:32b=43:532:45/3:3253”


我希望该字符串变成像这样的字典(键 - 值)

k - 23:3/24:32

b - 43:532:45/3:3253


我最初的想法是搜索 [a-Z]\*.* 并使用正则表达式将其拆分为匹配项。

但是,我认为这不会起作用,因为这也会带来b,这不是我想要的。另外,我无法让它工作(我是正则表达式的新手)。


等号只会出现在键和变量之间(永远不会出现在值中)。 key 也只能是单个字符而不是单词。

var test = "k=23:3/24:32b=43:532:45/3:3253";
var r = /(.*)([a-Z])(//*)(*.)/

以上是我的想法,但我似乎无法让任何事情发挥作用。

最佳答案

可能使用 /.=[^=]+(?!=)/g 来匹配键值对,而无需进一步了解键和值可能使用哪些字符:

  • 此处 .= 匹配等号之前的键(单个字符);
  • [^=]+(?!=) 匹配所有非 = 字符,直到下一个等号之前的一个字符(使用否定查找来限制贪婪匹配)前面)或字符串结尾;

var test = "k=23:3/24:32b=43:532:45/3:3253";

var result = {}

test.match(/.=[^=]+(?!=)/g).forEach(
m => {
var [k, v] = m.split('=')
result[k] = v
}
)

console.log(result)

关于Javascript 将字符串拆分为数组字典(键 -> 值)(正则表达式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50124987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com