zoukankan      html  css  js  c++  java
  • golang字符串常用函数

    package utils
    import "fmt"
    import "strconv"
    import "strings"
    
    var str string = "学golang使我快乐!"
    // 关于string的常用函数
    
    // 1. len(str) 内建函数,返回字符串长度,按字节,1个汉字3字节
    
    // 2. range []rune(str)  字符串遍历,处理中文问题 
    func F2() {
    	for _,value := range []rune(str) {
    		fmt.Printf("%c 
    ",value)
    	}
    }
    
    // 3. string转整数 strconv.Atoi(str) 这个函数是 strconv.ParseInt(s string, base int, bitSize int) (i int64 err error)的简化版
    func F3() {
    	num, _ := strconv.Atoi("666")
    	fmt.Printf("num type is %T,value is %v", num, num) // num type is int,value is 666
    
    }
    
    // 4. 整数转string strconv.Itoa(666) 是strconv.FormatInt(i int64, base int) string的简化版
    
    // 5. string to []byte  b := []byte(str)
    func F5(){
    	 b := []byte(str)
    	 fmt.Printf("%T %v
    ", b, b) // type of b is []uint8
    }
    
    // 6. []byte to string   s := string([]byte{77,88,99})
    func F6(){
    	 s := string([]byte{77,88,99})
    	 fmt.Printf("%T %v
    ", s, s) // string MXc
    }
    
    // 7. 十进制数转2 8 16进制字符串  strconv.FormatInt(i int64, base int) string  base->2,8,16
    
    // 8. 判断字符串s是否包含子串substr strings.Contains(s, substr string) bool
    
    // 9. 统计子串出现次数 strings.Count(s, sep string) int
    func F9() {
    	s := "A man who helps you when you are in trouble and who leaves you when you are successful is a real friend."
    
    	fmt.Println(strings.Count(s,"you")) // 4
    
    	s = "lv"
    	fmt.Println(strings.Count(s,"")) // 3
    
    }
    
    // 10. 判断连个字符串是否相等 str1 == str2 区分大小写, 不区分大小写方式strings.EqualFold(s, t string) bool
    
    // 11. 子串sep在字符串s中第一次/最后一次出现的位置,不存在则返回-1  Index(s, sep string) int/LastIndex(s, sep string) int
    
    // 12. 将n个old子串替换为new字符串,n<0会替换所有old子串 strings.Replace(s, old, new string, n int) string
    
    // 13. 大小写转换 strings.ToUpper  /ToLower
    
    // 14. 按sep拆分字符串,返回一个slice  strings.Split(s, sep string) []string
    
    // 15. 将字符串slice以sep为分隔符组合成一个字符串 strings.Join(a []string, sep string) string
    
    // 16. Trim系列 Trim(s string, cutset string) string 去除左右两边指定字符串  TrimRight/TrimLeft
    // 	TrimSpace(s string) string 去除左右两边空白
    //  TrimPrefix(s, prefix string) string /TrimSuffix(s, suffix string) string 去除前/后缀
    
    // 17. 判断s是否有前缀/后缀字符串prefix   HasPrefix(s, prefix string) bool  / HasSuffix
    
    
    
  • 相关阅读:
    一个JS的问题,请帮下忙!
    开始练习VS2003了
    SQL查询结果的合并问题
    几个微软的好东西!
    对谷歌输入发的一点疑虑
    Visual studio 2005 sdk 安装引起的后果
    Socket协议测试:TPS偏低,和响应时间计算出来的TPS不相符的问题
    数据库索引失效
    挡板模拟器桩模块驱动模块
    nmon 监控结果
  • 原文地址:https://www.cnblogs.com/endurance9/p/10336372.html
Copyright © 2011-2022 走看看