golang 一个很神奇的问题

253 天前
 ysz1121

有谁能帮解释一下这是啥原因?

使用 strings.TrimLeft app-a哪去了?

2610 次点击
所在节点    程序员
37 条回复
loveuer
253 天前
看文档。。。
hsfzxjy
253 天前
热知识:TrimLeft 不等于 RemovePrefix ,在任何语言都是
deplivesb
253 天前
给你贴一个 GPT 的回答:
`strings.TrimLeft` 函数在 Go 语言( Golang )的标准库中用于从字符串的左侧(开头)移除一组指定的字符。这个函数接受两个字符串参数:第一个是原始字符串,第二个是包含所有需要从原始字符串左侧移除的字符的字符串。

下面是一个简单的示例:

```go
package main

import (
"fmt"
"strings"
)

func main() {
originalString := " Hello, world! "
trimmedString := strings.TrimLeft(originalString, " ")

fmt.Printf("Original: '%s'\n", originalString)
fmt.Printf("Trimmed: '%s'\n", trimmedString)
}
```

在这个例子中,`strings.TrimLeft` 函数会移除 `originalString` 左侧的所有空格字符。输出将是:

```
Original: ' Hello, world! '
Trimmed: 'Hello, world! '
```

注意,该函数并不会修改原始字符串。相反,它会返回一个新的字符串。

此外,第二个参数是一个字符集,不是一个前缀字符串。也就是说,`strings.TrimLeft` 函数会从左侧移除所有在该字符集中的字符,而不是移除一个特定的前缀。例如:

```go
result := strings.TrimLeft("123abc456", "123")
```

`result` 的值会是 `"abc456"`,因为所有在 `"123"` 字符集中的字符都会从 `"123abc456"` 的左侧被移除。
deplivesb
253 天前
都“后端高级研发工程师” 了,我不信你不会查文档。
https://pkg.go.dev/strings#TrimLeft
bruce0
253 天前
你想要的 应该是 `strings.TrimPrefix()` 这个 `strings.TrimLeft()` 我以前也没注意到 看了一下文档才了解
jiang1234321
253 天前
没复现,能贴一下源码吗
j0hnj
253 天前
文档不看,issue 倒是提的很快 https://github.com/golang/go/issues/62344
yyf1234
253 天前
有这发帖和提 issue 的时间,但凡你点进去看看文档呢。。。无语
lsk569937453
253 天前
@j0hnj 笑死。。。。
Ericcccccccc
253 天前
这些函数的源码都挺短的吧.
yuk1no
253 天前
RTFM
1423
253 天前
离谱,也太水了吧
Xusually
253 天前
Doc 里直接写了:To remove a prefix, use TrimPrefix instead.

假如你的 authorization 是"Bearer aeerrr"的话,你会更囧 rz 的
zlstone
253 天前
@j0hnj #7 哈哈哈哈
nulIptr
253 天前
哈哈哈这种事情我肯定会先反思反思自己的问题,而不是直接去开个 issue
zlstone
253 天前
这就是后端高级研发工程师吗
Baloneo
253 天前
fmt.Println(strings.TrimLeft("Abc123-c12456", "Abc123-")) >> 456
orangie
253 天前
Goland 都提示你了,第二个参数叫做 cutset ,当作字符集合,不是当作字符串。
realpg
253 天前
程序员懂简单英语的重要性:
cutset
skywalkerfc
253 天前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/969283

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX