Golang如何截取字符串(Go语言字符串截取)

这篇关于golang如何截取字符串的文章,觉得挺不错的,感兴趣的golang开发者可以参考下,希望对大家在学习golang的成长路上有所帮助!

字符串 是一个不可改变的字节序列。字符串可以包含任意的数据,但是通常是用来包含可读的文本。

在开发的过程中,有时候我们需要获取字符串中的单个 字符,或者获取字符串中的某一个片段,这时候就需要我们能够对 golang 的字符串进行截取。

当我们要截取的字符串中包含中文字符串时,首先需要将字符串转换成 rune 数组。

1、Golang获取字符详解

语法

string[index]

参数

参数描述
string源字符串。
index要获取的字符下标。

说明

这里的 string 表示要截取的字符串,index 表示索引值。Go 语言规定,字符串中第一个字符的索引为 0、第二个字符的索引为 1,后面各字符依此类推。

2、Golang截取字符串详解

定义

Go 语言截取字符串,也叫 Go 语言字符串切片。

语法

string[start : end]

参数

参数描述
string源字符串。
start表示要截取的第一个字符所在的索引(截取时包含该字符)。如果不指定,默认为 0,也就是从字符串的开头截取。
end表示要截取的最后一个字符所在的索引(截取时不包含该字符)。如果不指定,默认为字符串的长度。

说明

使用了字符串切片的形式,截取了字符串 string 从索引 start 开始到索引 end 结束区间的字符串。

3、Golang截取字符串案例

获取单个字符

使用下标索引的形式,获取字符串的单个字符

package main
import ("fmt")
func main() {
	fmt.Println("(www.ixfsh.com)")	//使用下标索引的形式,获取字符串的单个字符
	str := "Hello SfjVip!"
	a := str[0]
	b := str[9]
	fmt.Println("a =", a, "b =", b)
}

首先,我们定义了一个字符串 变量,赋值为 “Hello SfjVip!”。接着,我们使用索引,访问该字符串的第一个元素和第十个元素,并使用 println 打印获取的结果。

截取字符串

使用字符串切片的形式,截取字符串

package main
import ("fmt")
func main() {
	fmt.Println("(www.ixfsh.com)")	//使用字符串切片的形式,截取字符串
	str := "Hello SfjVip!"
	str1 := str[0:4]
	str2 := str[:8]
	str3 := str[4:9]
	fmt.Println("str1 =", str1, "str2 =", str2, "str3 =",str3)
}

程序运行后,控制台输出如下:

首先,我们定义了一个字符串变量,赋值为 “Hello SfjVip!”。

接着,我们使用字符串切片的形式,截取字符串第一个元素开始到第四个元素结束,再次使用字符串切片的形式,截取字符串的第四个元素开始到第九个元素结束。

获取整个字符串

使用字符串切片的形式,可以获取整个字符串。

package main
import ("fmt")
func main(){
	fmt.Println("(www.ixfsh.com)")	//使用字符串切片的形式,获取整个字符串
	str := "Hello SfjVip!"
	str1 := str[:]
	fmt.Println("str1 =", str1)
}

首先,我们定义了一个字符串变量,赋值为 “Hello SfjVip!”。接着,我们使用字符串切片的形式,截取字符串第一个元素开始到最后一个元素结束,因此,这里返回了整个字符串。

截取中文字符串

截取中文字符串时,首先需要将字符串转换成 rune 数组

package main
import ("fmt")
func main() {
	fmt.Println("(www.ixfsh.com)")	//截取中文字符串时,首先需要将字符串转换成 rune 数组
	str := "(Hello SfjVip!)"
	str1 := str[0:2]
	strC := []rune(str)
	str2 := strC[0:2]
	fmt.Println("str1 =", string(str1), "str2 =",string(str2))
}

我们定义了一个包含中文的字符串变量 str,接着,我们直接使用索引的形式获取字符串的第一个到第二个子串,输出了乱码。

我们使用 强制类型转换,将字符串类型转成了 rune 数组,并赋值给变量 strC,接着我们再次使用索引的形式获取字符串的第一个到第二个子串,正确输出了子串内容。

4、Golang截取字符串总结

如果我们要截取的字符串中包含中文字符串,首先需要将字符串转换成 rune 数组。Go 语言获取字符语法为:

string[index]

Go 语言截取字符串,也叫 Go 语言字符串切片,其语法格式为:

string[start:end]

编程学习分享 » Golang如何截取字符串(Go语言字符串截取)