• Go字符串常用函数


    package main
    
    import (
    	"fmt"
    	"strconv"
    	"strings"
    )
    
    /*
    	系统内置的String常用的函数
    */
    func main() {
    	str :="这是一个字符串"
    	fmt.Println(len(str))//输出8中文是按照字节来输出
    
    	//遍历带中文的字符串
    	str2 := []rune(str)//切片  遍历有中文的字符串需要先将字符串转为rune切片
    	for i:=0;i<len(str2);i++ {
    		fmt.Printf("字符=%c
    ",str2[i])
    	}
    	//数字字符串转为int类型
    	strInt:="123"
    	n,error:=strconv.Atoi(strInt)
    	if error !=nil{
    		fmt.Println("转换错误",error)
    	}else{
    		fmt.Println(n)//现在就是转换为int类型了
    	}
    
    	//int类型转为字符串
    	num :=123
    	intStr :=strconv.Itoa(num)
    	fmt.Printf("inetStr类型是:%T%v
    ",intStr,intStr)
    
    	//字符串转为[]byte
    	bytes :=[]byte( "转为byte类型")
    	fmt.Println(bytes)//这样就是输出对应的阿斯克码
    
    	//[]byte转字符串
    	byteStr :=string([]byte{97,98,99})
    	fmt.Println(byteStr)
    
    	//十进制转为2,8,16进制的字符串
    	str = strconv.FormatInt(123,2)
    	fmt.Printf("123对应的2进制:%v
    ",str)
    
    	//查找字符串中是否包含某个值
    	strVal :="查找字符串"
    	b:=strings.Contains(strVal,"字")
    	if b{
    		fmt.Println("b字符串包含字",b)
    	}
    	//统计字符串中有几个指定的值
    	strVal2 :="aaacgv"
    	num2 :=strings.Count(strVal2,"a")
    	fmt.Printf("strval2中包含%v个a
    ",num2)
    	//字符串比较 如果用==是区分大小写的,strings.EqualFold是不区分大小写
    	judge :=strings.EqualFold("GO","go")
    	fmt.Println(judge)
    	//判断字符串中子字符串出现的位置 等于js中的 indexOf
    	index :=strings.Index("chicken","n")//返回结果和js一样没有找到就是-1
    	fmt.Println(index)
    	//判断字符串中子字符串最后出现的位置
    	index1 :=strings.LastIndex("chicken","c")
    	fmt.Println(index1)
    	//将字符串中指定的值替换为其他值
    	str = strings.Replace("oink oink oink","o","s",-1)//strings.Replace(字符串,指定值,替换为,(-1:是全部 1:是一个))
    	fmt.Println(str)
    	//字符串分隔为数组 与js中的split一样
    	strArr := strings.Split("a,b,v,b",",")
    	fmt.Printf("%v
    ",strArr)
    	//将字符串中的值进行大小写转换
    	str = "Hello"
    	//str3 := strings.ToLower(str)//转小写
    	str3 := strings.ToUpper(str)//转大写
    	fmt.Println(str3)
    	//去除字符串首尾空格 跟PHP trim一样
    	str = " hello "
    	str = strings.TrimSpace(str)
    	fmt.Printf("%q
    ",str)
    	//字符串首尾指定字符去除
    	str ="! hello! "
    	//str= strings.Trim(str,"! ")
    	//str =strings.TrimLeft(str,"!")//去除字符串左边指定字符
    	str =strings.TrimRight(str," ")//去除字符串右边边指定字符
    	fmt.Printf("%q
    ",str)
    	//判断字符串是否以指定字符开头
    	a := strings.HasPrefix(str,"!")
    	a = strings.HasSuffix(str,"!")//判断是否以指定字符结尾
    	fmt.Println(a)
    }
    

      

  • 相关阅读:
    Android Studio相关
    iOS自动签名网站
    Ruby开发小记
    Python全栈之路目录结构
    不会docker的开发
    Centos7安装python3
    03 centos7的基本价绍
    02 centos虚拟机安装
    01 Linux虚拟机的安装
    跨域问题的解决
  • 原文地址:https://www.cnblogs.com/sheep-fu/p/14749042.html
Copyright © 2020-2023  润新知