go基础库汇总

3,go mod

按照当前的趋势估计 go 之后的版本都是用 go mod 来管理了,gopath 这种模式感觉会被淘汰。

  1. go mod help 查看帮助
  2. go mod init<项目模块名称>初始化模块,会在项目根目录下生成 go.mod 文件。
  3. go mod tidy 根据 go.mod 文件来处理依赖关系。
  4. go mod vendor 将依赖包复制到项目下的 vendor 目录。建议一些使用了被墙包的话可以这么处理,方便用户快速使用命令 go build -mod=vendor 编译
  5. go list -m all 显示依赖关系。go list --json all 显示详细依赖关系。
  6. go mod download 下载依赖。参数是非必写的,path 是包的路径,version 是包的版本。

基本上用的时候就是,首先 go init 一下,然后编译的时候会把对应 git 上的包自己编译进去,编译之前可以 go tidy 处理一些依赖关系。如果网速慢也可以用 vendor 下载下来。

在此建议使用 go mod 的时候建议配置上 goproxy,毕竟国内被墙的厉害,就是环境变量加个 GOPROXY=https://goproxy.io 就 ok。

2,字符串包(strings包)

strings.Contains(s1, "abc") // true or false

strings.ContainAny

strings.Count

strings.HasPrefix(s2, "2019")

strings.HasSuffix(s2, ".txt")

strings.Index 第一次出现位置

strings.IndexAny 任意字符第一次出现位置

strings.LastIndex

strings.Join/Split/ToLower/ToUpper // 同js的join/Split

strings.Repeat("hello", 5); //hello5次

strings.Replace(s1, "old", "new", n) //n是个数,-1表示全部替换

截取子串,str[start:end]->substr,例如 s1[0:5],取出hello

1,数据类型转换(strconv包)

strconv包提供了字符串与简单数据类型之间的类型转换功能。可以将简单类型转换为字符串,也可以将字符串转换为其它简单类型。

这个包里提供了很多函数,大概分为几类:

字符串转int:Atoi()
int转字符串: Itoa()
ParseTP类函数将string转换为TP类型:ParseBool()、ParseFloat()、ParseInt()、ParseUint()。因为string转其它类型可能会失败,所以这些函数都有第二个返回值表示是否转换成功
FormatTP类函数将其它类型转string:FormatBool()、FormatFloat()、FormatInt()、FormatUint()
AppendTP类函数用于将TP转换成字符串后append到一个slice中:AppendBool()、AppendFloat()、AppendInt()、AppendUint()

详细:https://www.cnblogs.com/f-ck-need-u/p/9863915.html

原文地址:https://www.cnblogs.com/zccst/p/13999803.html