go 字符串常用函数

package main

import (
	"fmt"
	"strconv"
	"strings"
)

func main() {
	// 字符串长度
	str := "hello北"
	fmt.Println("str len():", len(str))

	// 带中文的字符串变量
	str2 := "hello北京"
	r := []rune(str2)
	for i := 0; i < len(r); i++ {
		fmt.Printf("字符=%c\n", r[i])
	}

	// 字符串转整数
	s, _ := strconv.Atoi("1234")
	fmt.Printf("%T\t%d\n", s, s)

	// 整数转字符串
	fmt.Printf("%T\t%s\n", strconv.Itoa(1234), strconv.Itoa(1234))

	//byte转字符串
	str = string([]byte{97, 98, 99})
	fmt.Printf("%T\t%s\n", str, str)

	str = string([]rune{'你', '是'})
	fmt.Printf("%T\t%s\n", str, str)

	//十进制转2,8,16进制
	str = strconv.FormatInt(123, 2)
	fmt.Printf("二进制:%v\n", str)
	str = strconv.FormatInt(123, 8)
	fmt.Printf("八进制:%v\n", str)
	str = strconv.FormatInt(123, 16)
	fmt.Printf("十六进制:%v\n", str)

	//字符串中是否包含某字符串
	str = "fdsagfoo"
	fmt.Println("是否包含:", strings.Contains(str, "foo"))

	//替换字符串中的子串
	str = "go go go go 性能好"
	//全部替换
	fmt.Println("go 替换成 golang:", strings.Replace(str, "go", "golang", strings.Count(str, "go")))

	// 统计字符出现次数
	fmt.Println("出现次数:", strings.Count(str, "f"))

	// 查看字符串第一次出现的位置
	fmt.Println("第一次出现位置:", strings.Index(str, "s"))

	//查看字符串最后一次出现的位置
	fmt.Println("最后一次出现位置:", strings.LastIndex(str, "f"))

	// 判断两个字符是否相等(==区分大小写)
	fmt.Println("不区分大小写否相等:", strings.EqualFold("A", "a"))
	fmt.Println("区分大小写是否相等:", "A" == "a")

	// 判断字符串是否以指定字符串开头
	fmt.Println("是否以hello开头:", strings.HasPrefix("hello world!", "hello"))

	// 判断是付出是否以指定字符串结尾
	fmt.Println("是否以.jpg结尾:", strings.HasSuffix("wx.jpg", ".jpg"))

	// 字符串转换为小写
	fmt.Println(strings.ToLower("GO"))

	// 字符串转换为大写
	fmt.Println(strings.ToUpper("sonfer"))

	// 将字符串两边空格去掉
	fmt.Println(strings.TrimSpace(" fdsag fdsa  "))

	// 去掉左右两边某些字符
	fmt.Println(strings.Trim(" !hao sonf esa !", " s!ah"))

	// 去掉左边某些字符
	fmt.Println(strings.TrimLeft(" !hao sonf esa !", " !"))

	// 去掉右边某些字符
	fmt.Println(strings.TrimRight(" !hao sonf esa !", " !"))

}

  

posted @ 2020-04-23 10:39  枯藤老艹树  阅读(316)  评论(0编辑  收藏  举报