【问题标题】:How to find substring in string pointer如何在字符串指针中查找子字符串
【发布时间】:2020-06-11 12:14:15
【问题描述】:

这个简单的问题让我很困惑。

外部包中的某些函数返回*string

如何在返回的*string 中找到子字符串?

已知的 Go 函数如 strings.IndexContains 需要 string 类型而不是指针。

【问题讨论】:

    标签: string pointers go


    【解决方案1】:

    取消对指针的引用,因此您得到一个string 值。然后你可以继续,就好像它不是一个指针一样。

    Spec: Address operators:

    对于指针类型*T的操作数x,指针间接*x表示T指向的T类型的variable

    例如:

    func main() {
        p := getPtr()
        fmt.Println(strings.Contains(*p, "go"))
        fmt.Println(strings.Contains(*p, "yo"))
    }
    
    func getPtr() *string {
        s := "gopher"
        return &s
    }
    

    输出(在Go Playground 上试用):

    true
    false
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-10-01
      • 2011-07-13
      • 2021-04-21
      • 1970-01-01
      • 2021-08-13
      • 2015-10-28
      相关资源
      最近更新 更多