📅  最后修改于: 2023-12-03 15:08:13.897000             🧑  作者: Mango
在 Golang 中,可以使用 bytes.TrimSpace 函数将字节切片中的前导和尾随空格修剪掉。
package main
import (
"bytes"
"fmt"
)
func main() {
s := []byte(" hello ")
trimmed := bytes.TrimSpace(s)
fmt.Printf("%s\n", trimmed)
}
输出:
hello
在上面的代码中,我们在字节切片 s 中包含了前导和尾随空格。使用 bytes.TrimSpace 函数返回一个新的字节切片,其中包含 s 中除前导和尾随空格之外的所有内容。最后我们使用 fmt.Printf 函数打印修剪后的字符串。
bytes.TrimSpace 函数也可以应用于字符串:
package main
import (
"bytes"
"fmt"
)
func main() {
s := " hello "
trimmed := bytes.TrimSpace([]byte(s))
fmt.Printf("%s\n", trimmed)
}
输出:
hello
上面的代码中,我们使用 []byte(s) 将字符串转换为字节切片。其他的操作与第一个例子相同,所以我们得到了相同的输出。
此外,如果您只想从切片开头修剪空格,可以使用 bytes.TrimLeftFunc 函数,如果您只想从切片结尾修剪空格,可以使用 bytes.TrimRightFunc 函数。
这是一个修剪开头空格的简单示例:
package main
import (
"bytes"
"fmt"
)
func main() {
s := " hello "
trimmed := bytes.TrimLeftFunc([]byte(s), func(r rune) bool {
return r == ' '
})
fmt.Printf("%s\n", trimmed)
}
输出:
hello
在这个例子中,我们使用了 bytes.TrimLeftFunc 函数来从字符串的开头修剪空格。我们传递了一个简单的函数,以便 bytes.TrimLeftFunc 函数知道我们想要什么。在这个例子中,我们使用了一个匿名的函数来指定我们要剪掉哪些字符。如果字符是空格符,我们就返回 true,否则返回 false。