Go-数据类型-字符串-string
字符串 -- string
-
字符串使用双引号表示 " "
-
多行或原始字符串(反斜杠失去转义行为)使用 反引号 ``
-
字符使用单引号表示 ' ',表示单独的字母、中文、数字
-
字符串转换 --
strings- 拼接
+fmt.Sprintf - 分割
Split - 连接
Join - 包含
Contains - 前后缀判断
HasPrefixHasSuffix - 子串位置
IndexLastIndex - ...
package main import ( "fmt" "strings" ) func main() { name := "beimenchuixue" fmt.Printf("%T", name) // 字符拼接 age := "18岁" // + 号拼接 fmt.Println(name + age) // 格式化拼接 newStr := fmt.Sprintf("%s%s", name, age) fmt.Println(newStr) // 字符串分割 split,反引号让转义符号\失去转义,成为一个普通字符 filePath := `C:\Users\Administrator\Desktop\blog\golang\基础知识` fmt.Println(strings.Split(filePath, "\\")) // 字符串前缀和后缀判断 fileName := "b-hi.jpg" // 前缀判断 fmt.Println(strings.HasPrefix(fileName, "b")) // 后缀判断 fmt.Println(strings.HasSuffix(fileName, ".jpg")) // 包含某个字符判断 contain fmt.Print(strings.Contains(fileName, "hi")) } - 拼接
-
字符串是不可变类型,想修改需要讲字符串转换成其他可变类型
转义字符-反斜杠 \
-
把前置了反斜杠的字符转义成特殊字符
双引号
\"单引号
\'回车
\r换行
\n退格
\b
字符编码
- 二进制 - 数字 - 字符
- Go内存使用Unicode编码,源文件使用UTF-8编码
- 通用编程语言,源码文件使用UTF-8编码,读取到内存中运行使用Unicode编码
字符默认类型
- 使用双引号的默认为
string类型,rune是int32的别名 - 使用单引号的默认为
int32类型,byte是uint8的别名
字符串抽取和切片
-
抽取
string[index]=>[]byte(string)[index]这对包含中文的字符串出现问题,为了正确识别,可以将字符串转成 []rune类型或者通过 for range 遍历
-
切片
string[start:end] -
抽取和切片的索引使用的字节单位

浙公网安备 33010602011771号