📜  Golang 中的字符串包(1)

📅  最后修改于: 2023-12-03 15:31:01.929000             🧑  作者: Mango

Golang 中的字符串包介绍

Golang 中的字符串是一种不可变的 type,它的内部实现是一个只读的 byte slice,也就是我们常见的 []byte 类型。Golang 为了方便对字符串的处理,提供了一个内置的字符串包 strings

字符串包常用函数
  1. Length 函数

Length 函数会返回字符串的长度,它是根据字符串的 byte 数计算的,所以中文字符会算作多个 byte。示例代码如下:

package main

import (
	"fmt"
)

func main() {
	str := "hello, world"
	fmt.Println(len(str)) // 输出 12
	str = "你好,世界"
	fmt.Println(len(str)) // 输出 13
}
  1. Join 函数

Join 函数会将一个字符串数组用指定的分隔符连接成一个字符串返回。示例代码如下:

package main

import (
	"fmt"
	"strings"
)

func main() {
	strs := []string{"hello", "world", "!"}
	fmt.Println(strings.Join(strs, ", ")) // 输出 hello, world, !
}
  1. Split 函数

Split 函数会将一个字符串按照指定的分隔符分成一个字符串数组并返回。示例代码如下:

package main

import (
	"fmt"
	"strings"
)

func main() {
	str := "hello, world!"
	strs := strings.Split(str, ", ")
	for _, s := range strs {
		fmt.Println(s)
	}
	// 输出 hello 和 world!
}
  1. Contains 函数

Contains 函数会判断一个字符串是否包含指定的字符串,返回一个布尔值。示例代码如下:

package main

import (
	"fmt"
	"strings"
)

func main() {
	str := "hello, world!"
	fmt.Println(strings.Contains(str, "world")) // 输出 true
	fmt.Println(strings.Contains(str, "good"))  // 输出 false
}
  1. Replace 函数

Replace 函数会将一个字符串中指定的字符替换成指定的字符,返回一个新的字符串。示例代码如下:

package main

import (
	"fmt"
	"strings"
)

func main() {
	str := "hello, world!"
	newStr := strings.Replace(str, "o", "*", -1) // 将 o 替换成 *
	fmt.Println(newStr) // 输出 hell*, w*rld!
}

以上仅是 strings 包中常用的函数,更多的 API 可查看 Golang 官方文档。