go 常用包
2022年1月25日string 包
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
strings.HasPrefix("zfwaefawefawefawefawefawefawef", "zf") #字符串开头是否存在zf strings.HasSuffix("zfwaefawefawefawefawefawefawef", "zf") #字符串结尾是否存在zf strings.Contains("3123rfq2323fawefaw123efwe", "123") #判断字符串是否包含123 strings.Index("3fef123rfq2323fawefaw123efwe", "123") #获取123从前往后数, 出现的位置 strings.LastIndex("3fef123rfq2323fawefaw123efwe", "123") #获取123从后往前数, 出现的位置 strings.IndexRune("3fef123rfq2323fawefaw123efwe", 0x0286) #使用非ASCII 字符串编码用这个方法 strings.Count("3fef123rfq2323fawefaw123efwe", "123") #统计123 出现的次数 strings.Replace("3fef123rfq2323fawefaw123efwe", "123", "321", 1) #字符串替换, 参数1要替换的字符串; 参数2查找什么; 参数3替换成什么; 参数4替换几个,-1全部替换; strings.Repeat("123", 3) #重复字符串 strings.ToLower("FWEFWEFWEF") #字符串小写 strings.ToUpper("ffffff") #字符串大写 strings.TrimSpace(" 发违法 ") #修剪字符串左右两边的空格 ,修剪只能掐头去尾 strings.Trim("3fecatf123rfq2323fawefaw123e3fe", "3fe") #修剪字符串两边的3fe println(strings.TrimLeft("3fecatf123rfq2323fawefaw123e3fe", "3fe")) #修剪左边3fe println(strings.TrimRight("3fecatf123rfq2323fawefaw123e3fe", "3fe"))#修剪右边3fe |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
/** * 字符串分割根据空格 */ for k, v := range strings.Fields("3fecatf 123rfq2323f awefaw123 e3fe") { println(k, v) } /** * 字符串分割根据, */ for k, v := range strings.Split("3fecatf,123rfq2323f,awefaw123,e3fe", ",") { println(k, v) } |
|
1 |
strings.Join(strings.Fields("3fecatf 123rfq2323f awefaw123 e3fe"), ";") #将切片拼接为字符串 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
/** * * 函数 strings.NewReader(str) 用于生成一个 Reader 并读取字符串中的内容, * 然后返回指向该 Reader 的指针,从其它类型读取内容的函数还有: * Read() 从 [] byte 中读取内容。 * ReadByte() 和 ReadRune() 从字符串中读取下一个 byte 或者 rune */ buf := make([]byte, 5) r := strings.NewReader("1234567890abc") readLen, err := r.Read(buf) //从 [] byte 中读取内容。必须使用 make([]byte, 5)创建还要指定长度 if err != nil { println("错误:", err) } fmt.Println("数据类型", reflect.TypeOf(buf)) fmt.Println("数据类型", reflect.TypeOf(r)) fmt.Println("读取到的长度:", readLen) fmt.Println("内存地址", buf) fmt.Println("使用的空间", r.Len()) fmt.Println("所分配的空间", r.Size()) for k, v := range buf { println(k, string(v)) } |
strconv
|
1 2 3 |
strconv.Atoi("23423424234") #string to int strconv.Itoa(237983) #int to string strconv.IntSize #64位操作系统64 32位操作系统32 |
Time
|
1 2 3 |
t := time.Now() fmt.Println(t.Format("2006-01-02 15:04:05")) #格式化时间 fmt.Println(t.Format("02 Jan 2006 15:04")) #格式化时间 |