字符串常用方法

74 阅读1分钟

strings 包方法

  • 下面列举字符串常用操作方法,详细可查阅 strings
方法 说明
strings.Contains 是否包含 xx 子串
strings.HasPrefix 是否以 xx 子串开头
strings.HasSuffix 是否以 xx 子串结尾
strings.Count xx 子串出现的次数
strings.Split 字符串的分割
strings.Index 查找 xx 子串出现的位置
strings.Replace 子串替换
strings.ToLower 转换为小写
strings.ToUpper 转换为大写
strings.Trim 去掉两侧自定义字符

代码示例

package main

import (
    "fmt"
    "strings"
)

func main() {
    originStr := "naruto.mingren@mail.com"

    // 是否包含xx子串
    v1 := strings.Contains(originStr, "mail") // true

    // 是否以xx子串开头
    v2 := strings.HasPrefix(originStr, "naruto") // true

    // 是否以xx子串结尾
    v3 := strings.HasSuffix(originStr, "com") // true

    // xx子串出现的次数
    v4 := strings.Count(originStr, "o") // 2

    // 字符串的分割
    v5 := strings.Split(originStr, "@") // [naruto.mingren mail.com]

    // 查找xx子串出现的位置
    v6 := strings.Index(originStr, "ming") // 7

    // 子串替换
    v7 := strings.Replace(originStr, "mingren", "zuozhu", 1)   // 替换指定次数,若为 -1,也相当于全部替换
    v8 := strings.ReplaceAll(originStr, "mingren", "xiaoying") // 全部替换

    // 大小写转换
    v9 := strings.ToLower("Hello Naruto")  // hello naruto
    v10 := strings.ToUpper("Hello Naruto") // HELLO NARUTO

    // 去掉特殊字符
    v11 := strings.Trim("###$$ Naruto $$###", "$# ")
    v12 := strings.TrimLeft("  \tNaruto", " \t")
    v13 := strings.TrimRight("Naruto\t  ", " \t")

    fmt.Println(v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13)
}