Golang 字符串操作 (2)
sin
2021-06-08 AM
641℃
0条
s1 := " aBc"
s2 := "100a"
s3 := s1 + s2
fmt.Println(s3)
// 前缀后缀
fmt.Println(strings.HasPrefix(s3, "a")) // false
fmt.Println(strings.HasSuffix(s3, "0")) // false
// 包含
fmt.Println(strings.Contains(s3, "9")) // false
// 找位置
fmt.Println(strings.Index(s3, "0")) // 5
fmt.Println(strings.LastIndex(s3, "0")) // 6
// TODO IndexRune
fmt.Println(strings.Replace(s3,"0","1",-1)) // " aBc111a",如果 n = -1 则替换所有字符串
fmt.Println(strings.Count(s3,"0")) // 2
fmt.Println(strings.Repeat(s3,2)) // " aBc100a aBc100a"
// 大小写
fmt.Println(strings.ToLower(s3)) // " abc100a"
fmt.Println(strings.ToUpper(s3)) // " ABC100A"
// 去头去尾
fmt.Println(strings.TrimSpace(s3)) // "aBc100a"
fmt.Println(strings.Trim(strings.TrimSpace(s3),"a")) // "Bc100"
fmt.Println(strings.TrimLeft(strings.TrimSpace(s3), "a")) // "Bc100a"
fmt.Println(strings.TrimRight(strings.TrimSpace(s3),"a")) // "aBc100"
// 字符串切割和连接
fmt.Println(strings.Split("a,b,c,d", ",")) // ["a", "b", "c", "d"]
fmt.Println(strings.Join([]string{"a", "b", "c", "d"}, ","))
// Map
rdata := strings.Map(func(r rune) rune{
if r != ' ' {
return r
}
return -1
}, s3)
fmt.Println(rdata) // aBc100a
参考