package main
import (
"fmt"
"strings"
)
func main() {
//测试一个字符的长度
name := "字节跳动"
bytes := []rune(name)
fmt.Println(len(bytes))
//转意符
//1.双引号转义符
coursename := "字节\"跳动\""
fmt.Println(coursename)
//格式化输出,类似于c的输出
username := "郑梓桐"
company := "字节跳动"
age := 22
address := "北京"
fmt.Printf("用户名:%s, 公司:%s, 年龄:%d, 地址:%s\n",username,company,age,address)
//对性能要求低的时候可以这么了拼接字符串
userMsg := fmt.Sprintf("用户名:%s, 公司:%s, 年龄:%d, 地址:%s\n",username,company,age,address)
fmt.Println(userMsg)
//高性能版本的Stringbuilder的字符串拼接,相当一一个内容一个内容写入
var builder strings.Builder
builder.WriteString("用户名")
builder.WriteString(username)
res := builder.String()
fmt.Println(res)
//字符串的比较
a := "byte"
b := "byte"
fmt.Println(a==b)
//介绍方法
//1.是否包含一个字串
fmt.Println(strings.Contains(name,"节跳"))
//查询字串出现的次数
nametwo := "我是一个我一个一个我的"
fmt.Println(strings.Count(nametwo,"我"))
//分割字符串
fmt.Println(strings.Split(nametwo,"一"))
//字符串是否包含前缀和后缀
fmt.Println(strings.HasPrefix(nametwo, "我"))
fmt.Println(strings.HasSuffix(nametwo, "我"))
//字串替换,-1指的是全部替换
fmt.Println(strings.Replace(nametwo,"我","你",-1))
//大小写转换
fmt.Println(strings.ToLower("E"))//小写
fmt.Println(strings.ToUpper("e"))
//去掉首位的字符"只因"
mystr := "我是一个只因你太美的肖只因"
fmt.Println(strings.Trim(mystr,"只因"))
}
语言之间的方法都是类似的。