strings.Trim正在删除字母"i"(golang)

Mon*_*per 0 go

full path: views/admin/users.html
trim set (views): /admin/users.html
trim set (views/): admin/users.html

full path: views/index.html
trim set (views): /index.html
trim set (views/): ndex.html
Run Code Online (Sandbox Code Playgroud)

继承我的代码:

    err := filepath.Walk("./views", func(path string, info os.FileInfo, err error) error {
        if strings.Contains(path, ".html") {
            bytes, err := ioutil.ReadFile(path)
            if err != nil {
                panic(err)
            }
            fmt.Println("full path:", path)
            fmt.Println("trim set (views):", strings.Trim(path, "views"))
            fmt.Println("trim set (views/):", strings.Trim(path, "views/"))
        }
    }
Run Code Online (Sandbox Code Playgroud)

我迷失了吗?正斜杠与此有关吗?如果你知道的话,请解释一下发生了什么.

Mar*_*ark 6

strings.Trim()的第二个参数是'cutset',即从字符串中删除的一组符文,'i'是其中之一.

要返回路径的最后一个元素,请使用path.Dir().