go语言基础 -- 字符串及其常用函数

虽然我们可以通过官网去查询想函数,但一些常用的函数日常开发中还是需要熟练的。下面我们来看下go语言中字符串相关的常用函数

  1. 按字节统计字符串长度:len(str)
  2. 按字符遍历字符串,同时处理有中文的问题:r := []rune(str),这个方法前面的文章也有讲到
  3. 字符串转整数:n, err := strconv.Atoi(“123”)
  4. 整数转字符串:str := strconv.Itoa(123)
  5. 字符串转byte切片:var bytes = []byte(str)
  6. byte切片转字符串:str := string([]byte{97, 98, 99}) // 97, 98, 99是对应的ascii码值
  7. 10进制转2,8,16进制:str := strconv.FormatInt(123, 2),转2进制,输出对应的字符串
  8. 判断子串是否在指定字符串中:b := strings.Contains(“mylearning”, “my”), 返回true or false
  9. 判断子串出现了几次:num := strings.Count(“hhhhaaha”, “ha”)
  10. 不区分大小写判断字符串是否相等(区分直接用==判断):strings.EqualsFold(“abx”, “ABX”),返回bool
  11. 返回子串第一次出现的index值:strings.Index(“lzs go”, “go”),下标从0开始,这里为4
  12. 返回子串最后一次出现的index:strings.LastIndex(“hello, lzs, go”, “go”)
  13. 替换字符串,strings.Replace(“hello, go”, “go”, “c++”, 1),这里把替换成c++,1表示替换1个,换多个写多个的数量,如果全替换,用-1;
  14. 按指定的字符进行分割,将字符串拆分为字符串数组:Strings.Split(“hello, lzs, go”, “,”),会拆分成hello, lzs,go三个值,形成一个数组返回
  15. 字符串的大小写转换:strings.ToLower(“Go”),strings.ToUpper(“abc”)
  16. 去掉字符串双端的空格:strings.TrimSpace(" hello, let’s learn go ")
  17. 去除字符串双端指定字符:strings.Trim(" hells, afjdkljf ,“, “,”),这个表示去掉左右两边逗号,如果我们想去掉空格和逗号,不用写两遍,直接加个空格strings.Trim(” hells, afjdkljf ,“, " ,”)
  18. 去除左边的指定字符:strings.TrimLeft(str, “x”)
  19. 去除右边指定字符:strings.TrimRight(str, “x”)
  20. 判断字符串是否以指定字符串开头:strings.HasPrefix(str, pre)
  21. 判段字符串是否以指定字符串结束:strings.HasSuffix(str, suffix)

你可能感兴趣的:(go/golang基础及实践,golang,后端)