zoukankan      html  css  js  c++  java
  • 字符串、strings、strconv

    字符串是UTF-8字符的一个序列。
    字符串是字节的定长数组。
    解释字符串,包含转义字符,非解释字符串,不包含转义字符。
    字符串可以使用比较运算符进行比较,且按照内存中的字节来对比。
    获取字符串所占的字节长度:len(str)
    获取字符串中的字节地址是非法的。&str[i]

    字符串拼接:
    s = s1 + s2
    使用+号并不高效,更好的办法是使用strings.Join,
    字符缓冲更给力(bytes.Buffer) 谁线的没事,这么恶心啊,这么做。。。
    字符串(字节数组)转换为UTF-8字符数组:
    strarry := []rune("网建英")
    len(strarry)获取底层数组的长度。

    Go 中使用string包来完成对字符串的主要操作。


    HasPrefix判断字符串s是否以prefix开头
    strings.HasPrefix(s, prefix string) bool

    是否以suffix结尾
    strings.HasSuffix(s, suffix string) bool

    s是否包含substr
    strings.Contains(s, substr string) bool

    str在s中第一次出现的第一个字符的位置
    strings.Index(s, str string) int

    最后一次出现的第一个字符的位置
    strings.LastIndex(s, str string) int

    非ASCII码在父字符串中出现的位置
    strings.IndexRune(s string, r rune) int

    替换在str中的前n个old字符,n=-1则替换所有
    strings.Replace(str, old, new, n) string

    统计str在s中出现的非重叠次数
    strings.Count(s, str string) int

    重复count次字符串并返回新字符串
    strings.Repeat(s, count int) string

    全部变小写
    strings.ToLower(s) string

    全部变大写
    strings.ToUpper(s) string

    string.TrimSpace(s)剔除字符串开头和结尾的空白符号

    string.Trim(s,"cut")提出开头结尾的"cut"

    TrimLeft剔除开头的。。。

    TrimRight

    string.Fields(s)利用空白作为分隔符将字符串分割为若干块,并返回一个slice。
    如果字符串只包含空白符号,返回一个长度为0的slice

    string.Split(s,sep)自定义分割符号对字符串分割,返回slice

    将元素类型为 string 的 slice 使用分割符号来拼接组成一个字符串
    strings.Join(sl []string, sep string) string,将不同元素连接起来用sep

    strings.NewReader(str)用于生成一个Reader并读取字符串中的内容,然后返回指向该Reader的指针。

    Read()从[]byte中读取内容。

    ReadByte()和ReadRune()从字符串中读取下一个byte或者rune。


    字符串和其它类型的转换(strconv)
    该包包含了一些变量用于获取程序运行的操作系统平台下 int 类型所占的位数
    strconv.IntSize

    任何类型 T 转换为字符串总是成功的。
    strconv.itoa(i int) string 返回i代表的十进制数的字符串

    strconv.FormatFloat(f float64, fmt bute, prec int, bitSize int)string
    将64位浮点型的数字转换为字符串,其中fmt表示格式(befg),prec表示精度,bitSize则使用32表示float32,64表示float64

    字符串类型转换为数字类型
    strconv.Atoi(s string)(i int, err error)将字符串转换为int型
    strconv.ParseFloat(s string, bitSize int)(f float,err error)将字符串转换为float64型
    利用多返回值的特性,这些函数会返回 2 个值,第 1 个是转换后的结果(如果转换成功),第 2 个是可能出现的错误,因此,我们一般使用以下形式来进行从字符串到其它类型的转换
    val, err = strconv.Atoi(s)

  • 相关阅读:
    【SqlSugarCore】SqlSugarScope的异步上下文问题
    web系统国际化思路
    mac iterm2 报错“iterm2_precmd:type:50”解决
    Atcoder 123C 1, 2, 3
    Atcoder 123D Yet Another Sorting Problem
    Atcoder 124F Chance Meeting
    Atcoder 212D Querying Multiset
    Atcoder 212E Safety Journey
    Atcoder 212F Greedy Takahashi
    Atcoder 212G Power Pair
  • 原文地址:https://www.cnblogs.com/mcmx/p/11380535.html
Copyright © 2011-2022 走看看