以下是最新Go版本的TrimRight的代码

我观察到一种行为,可能是我误会了,但是据我所知,以下代码应将输出作为

Hello

但是输出如下
Hell

为什么 ?请注意,我在cutset中的Gophers前面保留了一个空格,因此从根本上讲,它应该从主字符串中删除“Gophers”,仅留下Hello
package main

import (
    "fmt"
    "strings"
)

func main() {
    result := strings.TrimRight("Hello Gophers", " Gophers")

    fmt.Println(result, len(result))
}

最佳答案

如记录所示, TrimRight 从右侧删除所有匹配的字符。由于o包含在列表中(" Gophers"),因此也会对其进行修剪。如果要修剪该确切的子字符串,请使用 TrimSuffix

10-04 21:58