字符串的常用操作

   视频学习地址:Go零基础入门_在线视频教程-CSDN程序员研修院

一. 转义符

1、常见转义符

\t

制表符(Tab)

\n

换行符(New Line)

\\

反斜杠符号(\)

\"

双引号(")

\r

回车符(Carriage Return)

var s1 = "hello xt\nhello,lxc"
fmt.Println(s1)
var s2 = "my name is \"xt\""
fmt.Println(s2)
var s3 = "D:\\installation\\Go"
fmt.Println(s3)
2、其他转义符

\a

响铃符(Bell)

\b

退格符(Backspace)

\f

换页符(Form Feed)

\v

垂直制表符(Vertical Tab)

\'

单引号(')

\?

代表一个问号

var s4 = "l\vxc"
fmt.Println(s4)
3、多行字符串

语法: ``

var s5 = `一
二
三
`
fmt.Println(s5)

二. 格式化输入输出

%d

十进制整数

%b

二进制整数

%o

八进制整数

%x

十六进制整数(小写字母)

%X

十六进制整数(大写字母)

%f

浮点数

%e

科学计数法表示的浮点数

%E

科学计数法表示的浮点数(大写字母)

%s

字符串

%c

字符

%t

布尔值(true/false)

%p

指针的十六进制表示

%v

使用默认格式输出变量

%+v

输出结构体字段的名称和值

%#v

输出Go语言的语法表示

%T

输出变量的类型

age := 18
fmt.Printf("你的年龄是:%d", age)

age1 := 18
fmt.Printf("你的年龄的二进制数:%b", age1)

age2 := 18
fmt.Printf("类型是:%T", age2)

三. 字符串拼接

1.使用 + 号拼接
str1 := "hello"
str2 := "lxc"
fmt.Println(str1 + " " + str2)
2.使用fmt.Sprintf 
str1 := "hello"
str2 := "lxc"
str3 := fmt.Sprintf("%s %s", str1, str2)
fmt.Println(str3)
3.Join 
str1 := "hello"
str2 := "lxc"

sli := []string{str1, str2}
str4 := strings.Join(sli, " ")
fmt.Println(str4)
4.bytes.Buffer 
str1 := "hello"
str2 := "lxc"
var bt bytes.Buffer
bt.WriteString(str1)
bt.WriteString(" ")
bt.WriteString(str2)
str5 := bt.String()
fmt.Println(str5)
5.strings.Builder 官方推荐 效率最高 
str1 := "hello"
str2 := "lxc"
var build strings.Builder
build.WriteString(str1)
build.WriteString(" ")
build.WriteString(str2)
str6 := build.String()
fmt.Println(str6)

四. 字符串的常用方法

len(s)

返回字符串s的长度(字节数)

+

连接两个字符串

strings.Contains(s, substr)

判断字符串s是否包含子串substr,返回布尔值

strings.Count(s, substr)

返回字符串s中子串substr出现的次数

strings.EqualFold(s1, s2)

不区分大小写地比较两个字符串s1和s2是否相等,返回布尔值

strings.Index(s, substr)

返回子串substr在字符串s中第一次出现的索引位置,如果未找到则返回-1

strings.LastIndex(s, substr)

返回子串substr在字符串s中最后一次出现的索引位置,如果未找到则返回-1

strings.Replace(s, old, new, n)

在字符串s中将old替换为new,替换次数为n,如果n为-1则替换所有

strings.Split(s, sep)

根据分隔符sep将字符串s拆分为一个字符串数组

strings.TrimSpace(s)

去除字符串s两端的空白字符(包括空格、制表符、换行符等)

strings.ToUpper(s)

将字符串s转换为大写形式

strings.ToLower(s)

将字符串s转换为小写形式

strings.Join(slice, sep)

将一个字符串切片slice通过分隔符sep连接成一个字符串

strings.HasPrefix(s, prefix)

判断字符串s是否以子串prefix开头,返回布尔值

strings.HasSuffix(s, suffix)

判断字符串s是否以子串suffix结尾,返回布尔值

strings.Repeat(s, count)

将字符串s重复count次,返回一个新的字符串

strings.ToLowerSpecial(s, locale)

将字符串s转换为小写形式,并根据指定的地区locale进行特殊处理

strings.ToUpperSpecial(s, locale)

将字符串s转换为大写形式,并根据指定的地区locale进行特殊处理

strings.Fields(s)

根据空白字符(空格、制表符、换行符等)将字符串s拆分为一个字符串数组

strings.FieldsFunc(s, f)

根据自定义函数f将字符串s拆分为一个字符串数组

strings.Trim(s, cutset)

去除字符串s两端包含在cutset中的字符

strings.TrimLeft(s, cutset)

去除字符串s左侧包含在cutset中的字符

strings.TrimRight(s, cutset)

去除字符串s右侧包含在cutset中的字符

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值