golang string方法
Go语言中的string类型是一个很有特的类型,与其他语言不同的是,它是Unicode字符序列,而不是ASCII字符序列。string类型是不可变的,也就是说一旦创建了一个string对象,就不能够修改它的值。但是可以通过一些基本的方法来操作这个字符串,例如获取子字符串、查子字符串、替换子字符串、比较字符串等等。接下来,我们就来介绍一下golang中常用的string方法。
1. len
len函数可以求出字符串的长度,使用方式:len(str),其中str表示要求长度的字符串,它返回的是字符串中的字符数,而不是字节数。
示例:
```go
s := "你好世界"
fmt.Println(len(s)) //输出9
```
2. 字符串遍历
我们可以使用range循环来遍历字符串,它可以遍历字符串中的每一个Unicode字符。
输出结果:
```go
0 你
3 好
6 世golang语法
9 界
```
和切片一样,我们也可以对字符串进行切片,获取其中的子字符串。语法格式如下:
```go
str[:n] //截取前n个字符
str[n:] //从第n个字符截取到结尾
str[m:n] //截取m~n之间的字符(不包含n)
```
```go
s := "你好世界"
fmt.Println(s[0:2]) //输出“你好”
fmt.Println(s[3:]) //输出“世界”
fmt.Println(s[:6]) //输出“你好”
```
使用+号可以将多个字符串连接起来,例如:
```go
str1 := "Hello"
str2 := "World"
str3 := str1 + " " + str2
fmt.Println(str3) //输出“Hello World”
```
在golang中比较字符串需要使用strings包提供的Compare函数,它会返回一个整数。如果字符串相等则返回0,如果第一个字符串小于第二个字符串则返回-1,如果第一个字符串大于第二个字符串则返回1。
6. 查子字符串
使用strings包提供的Contains函数可以判断一个字符串是否包含另一个字符串,也可以使用Index函数查一个字符串在另一个字符串中的位置。
在golang中,我们可以使用strings包提供的Split函数来分割字符串,它会将字符串按照指定的分隔符分割成若干个子字符串,返回一个字符串数组。
语法格式如下:
```go
strings.Split(str, sep)
```
其中,str表示要分割的字符串,sep表示分隔符。
```go
["a" "b" "c" "d" "e"]
```
其中,str表示要进行替换的字符串,old表示要替换的子字符串,new表示用来替换的新字符串,n表示最多替换的次数(-1表示全部替换)。
```go
Hello GoLang GoLang GoLang
```
在golang中,我们可以使用strconv包提供的函数来进行字符串转换,例如将字符串转换成整数、浮点数等等。
```go
i, err := strconv.Atoi("100")
if err != nil {
fmt.Println("字符串转化成整数失败")
} else {
fmt.Printf("%T %d\n", i, i)
}
```
```go
int 100
```
注: strconv.Atoi函数返回两个值,第一个是转换后的结果,第二个是错误值(如果转换失败会返回非nil错误值)。
以上是golang中常用的一些string方法,掌握了这些方法,我们就可以在日常开发中更轻松地对字符串进行操作。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论