gpt4 book ai didi

arrays - 使用正则表达式拆分字符串以将子字符串存储在映射中的分隔符内以创建键值对

转载 作者:行者123 更新时间:2023-12-01 22:10:47 26 4
gpt4 key购买 nike

在 Go-Lang
我需要从字符串中提取一个位于两个定界符之间的子字符串,每对定界符将是一个键,子字符串将是它的值。
一个简单的例子:“可口可乐令人耳目一新<百事可乐>只是<不是>”
两个分隔符:< 和 >
目标:extractMap:= map[string]string{"first":"pepsi", "second":"not"}
我试图捕获两者之间的数据的正则表达式

\<(.*?)\>
如何将提取的每个子字符串存储在映射中,可以迭代以存储提取的子字符串

最佳答案

Go 没有直接的方法来查找所有匹配项并将其作为 map 返回。您可以使用 FindAllStringSubmatch从 regexp 包中获取所有匹配项和范围。这是一个例子

str := "Coca Cola is refreshing < pepsi > is simply < not >"
r := regexp.MustCompile(`\<(.*?)\>`)

matches := r.FindAllStringSubmatch(str, -1)
for _, match := range matches {
if len(match) > 1 {
fmt.Println("Found match: ", match[1])
}
}

// Output
// Found match: pepsi
// Found match: not

关于arrays - 使用正则表达式拆分字符串以将子字符串存储在映射中的分隔符内以创建键值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63932116/

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