package main
import (
"fmt"
"strings"
)
func main() {
str := "作为一种基本数据结构,每种语言都有一些对于字符串的预定义处理函数"
//检查字符串是否以%s开头
hasPrefix := strings.HasPrefix(str, "作为")
fmt.Printf("%t\n", hasPrefix)
//true
//检查字符串是否以%s结尾
hasSuffix := strings.HasSuffix(str, "处理函数")
fmt.Printf("%t\n", hasSuffix)
//true
//检查字符串s1 是否包含 s2
contains := strings.Contains(str, "每种")
fmt.Printf("%t\n", contains)
//true
//判断子字符串或字符在父字符串中出现的位置(索引
index := strings.Index(str, "基")
prefix := []byte(str)[0:index]
// 将子串之前的字符串转换成[]rune
rs := []rune(string(prefix))
// 获得子串之前的字符串的长度,便是子串在字符串的字符位置
index = len(rs)
fmt.Println("index:", index)
//index: 4
//字符串替换
replace := strings.Replace(str, "每种语言都有一些对于字符串的预定义处理函数", "嘿!改变了", -1)
fmt.Println("replace:", replace)
//replace: 作为一种基本数据结构,嘿!改变了
//统计字符串出现次数
count := strings.Count(str, "每种")
fmt.Println("count:", count)
//count: 1
//重复字符串
repeat := strings.Repeat(str, 2)
fmt.Println(repeat)
//作为一种基本数据结构,每种语言都有一些对于字符串的预定义处理函数作为一种基本数据结构,每种语言都有一些对于字符串的预定义处理函数
//修改字符串大小写
str2 := "hello word"
//转为大写
toUpper := strings.ToUpper(str2)
fmt.Println(toUpper)
//HELLO WORD
//转为小写
toLower := strings.ToLower(toUpper)
fmt.Println(toLower)
//hello word
//修剪字符串
str3 := " 我的前面有个空格"
trimLeft := strings.TrimLeft(str3, " ")
fmt.Println(trimLeft)
//我的前面有个空格
str4 := "我的后面有个空格 "
trimRight := strings.TrimRight(str4, " ")
fmt.Println(trimRight)
//我的后面有个空格
str5 := " 我的前后都有个空格 "
trim := strings.Trim(str5, " ")
fmt.Println(trim)
//我的前后都有个空格
//分割字符串
str6 := "富强 民主 文明 平等 公正 法制 爱国 敬业 诚信 友善"
fields := strings.Fields(str6)
fmt.Printf("fields: %v\n", fields)
//fields: [富强 民主 文明 平等 公正 法制 爱国 敬业 诚信 友善]
for _, val := range fields {
fmt.Println(val)
}
//富强
//民主
//文明
//平等
//公正
//法制
//爱国
//敬业
//诚信
//友善
str7 := "富强|民主|文明|平等|公正|法制|爱国|敬业|诚信|友善"
split := strings.Split(str7, "|")
fmt.Println(split)
//[富强 民主 文明 平等 公正 法制 爱国 敬业 诚信 友善]
join := strings.Join(split, "*")
fmt.Println(join)
//富强*民主*文明*平等*公正*法制*爱国*敬业*诚信*友善
}
网友评论