// [[GET /v2/PreMigrateCheck][501] v2PremigrationcheckNotImplemented &{Code:0x140015020e0 Message:0x14000cd6110}]
//
i Want to get the pointer value which is contained in above formatted string message. I am writing a function for that
func myfunc(d string) string {
split := strings.Split(d, " ")
for _, a := range split {
if strings.Contains(a, "Message:") {
str1 := strings.TrimPrefix(a, "Message:")
str2 := strings.TrimSuffix(str1, "}")
return **&str2
}
}
return d
}
//触发api后输出
{
"message": "0x14000e449c0"
}
//我想将此指针的输出转换为值,但获取此值 **&str2 但收到错误('*&str2' 的间接值无效(类型'string'))
我无法理解你的代码的要点。我同意评论区的建议。
您遇到此问题是因为代码尝试取消引用原始值。在本例中为“字符串”
str2 是一个字符串值,&str2 是一个字符串指针,然后像这样
*&str2
那样取消引用字符串指针。该表达式是字符串类型,第二个星号尝试取消引用原始类型。这就是错误的来源。