gpt4 book ai didi

go - golang中多个字符串字段的sscanf

转载 作者:IT王子 更新时间:2023-10-29 00:39:26 32 4
gpt4 key购买 nike

我正在尝试使用 sscanf 来解析多个字符串字段。这是一个示例代码片段:

package main

import "fmt"

func main() {
var name, currency string

_, err := fmt.Sscanf("transaction benson: dollars", "transaction %s: %s", &name, &currency)

fmt.Println(err, name, currency)
}

输出是

input does not match format benson: 

Program exited.

最佳答案

%s 贪婪并吞噬下一个空间,这意味着它吃掉了冒号。在处理完 %s 之后,它会尝试扫描冒号,但是等一下,冒号已经被消耗掉了,下一个字符实际上是一个空格,而不是冒号!所以它失败了。

在 C 中,您可以使用 %[^:] 而不是 %s 来解决这个问题,但 Go 似乎不支持这个。您可能需要找到一些无需 Sscanf 即可解析字符串的方法。

关于go - golang中多个字符串字段的sscanf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32170109/

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