不懂Go中的func strings.TrimLeft

我正在尝试测试使用func strings.TrimLeft. 我需要查看它的 MVCE 运行情况,所以我查看了API 规范

它附带了一个示例,我将其导出,代码如下:

package main

import (

    "fmt"

    "strings"

)


func main() {

    fmt.Print(strings.TrimLeft("¡¡¡Hello, Gophers!!!", "!¡"))

}

运行后,你得到Hello, Gophers!!!


我决定在输入字符串前添加,将代码更改为


package main


import (

    "fmt"

    "strings"

)


func main() {

    fmt.Print(strings.TrimLeft("irrelevant text¡¡¡Hello, Gophers!!!", "!¡"))

}

结果字符串是整个输入字符串:irrelevant text¡¡¡Hello, Gophers!!!


至少切割集字符不应该被删除吗?!


呼如林
浏览 107回答 2
2回答

烙印99

它是一个行业标准,trim暗示了适当的后缀或前缀。trimLeft只会从字符串的开头删除匹配的字符,并在第一个不匹配的地方停止。在您的示例中,“无关”的“i”是它检查的第一个字符。它没有通过检查,所以它停止修剪(即它什么都不做)。trimRight相比之下,从字符串末尾开始按降序索引顺序删除匹配项。

一只甜甜圈

至少切割集字符不应该被删除吗?!字符串开头的所有那些。其中有零个,因此删除了零个字符。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go