Golang 如何将字节切片转换为小写
在Golang中,字节切片是字节的序列。可以使用内置函数[]byte()创建字节切片。有时,您可能希望将字节切片转换为小写。这可以通过使用bytes.ToLower()函数轻松实现。在本文中,我们将学习如何在Golang中将字节切片转换为小写。
使用bytes.ToLower()
bytes.ToLower()函数将字节切片转换为小写。以下是如何使用它的方法−
示例
package main
import (
"bytes"
"fmt"
)
func main() {
s := []byte("GOlang")
fmt.Println("Original:", string(s)) // Output: Original: GOlang
s = bytes.ToLower(s)
fmt.Println("Lowercase:", string(s)) // Output: Lowercase: golang
}
输出
Original: GOlang
Lowercase: golang
在这个示例中,我们创建了一个值为”GOlang”的字节切片s。然后我们使用bytes.ToLower()函数将切片转换为小写。该函数返回一个新的切片,其中的所有字节均转为小写,并且我们将这个新的切片赋值回s。最后,我们使用fmt.Println()函数打印出原始切片和小写版本的切片。
使用for循环
如果您希望在不使用bytes.ToLower()函数的情况下将字节切片转换为小写,您可以使用for循环和unicode.ToLower()函数。以下是一个示例−
示例
package main
import (
"fmt"
"unicode"
)
func main() {
s := []byte("GOlang")
fmt.Println("Original:", string(s)) // Output: Original: GOlang
for i, b := range s {
s[i] = byte(unicode.ToLower(rune(b)))
}
fmt.Println("Lowercase:", string(s)) // Output: Lowercase: golang
}
输出
Original: GOlang
Lowercase: golang
在这个示例中,我们创建了一个名为 s 的字节切片,其值为“GOlang”。然后我们使用一个for循环来迭代切片中的每个字节。对于每个字节,我们使用rune()函数将其转换为rune类型,然后调用unicode.ToLower()函数将其转换为小写。最后,我们将rune转换回字节并将其重新赋值给切片。最后,我们使用fmt.Println()函数打印切片的原始版本和小写版本。
结论
在本文中,我们学习了如何使用bytes.ToLower()函数和带有unicode.ToLower()函数的for循环将字节切片转换为小写的方法。bytes.ToLower()函数是将字节切片转换为小写的推荐方法,因为它更简洁高效。
极客笔记