go标准库之strings
- Go
- 2020-11-10
- 110
- 0
pkg strings包实现了用于操作字符的简单函数
- func Compare
比较两个字符串,相等返回 0 , 小于返回 -1 , 大于返回 1
- func EqualFold
判断两个urf-8编码字符串是否相同(不区分大小写),返回bool
- func HasPrefix
判断字符串是否有指定前缀字符串,返回bool
- func HasSuffix
判断字符串是否有指定后缀字符串,返回bool
- func Contains
判断字符串是否包含指定子字符串,返bool
- func ContainsRune
判断字符串是否包含指定utf-8编码值,返bool
示例:
字符串="中国" 是否 包含 rune('中') 返回 true;
这里 rune 是 int32的别名,中字符对应的int32是 20013.
如果你直接判断字符串中是否包含 20013则也是返回true
- func ContainsAny
判断字符串是否包含指定chars(字符串)的任一字符.返回bool
示例:
字符串="abc中国",是否包含字符串("中ddgc"),返回true
结果是有 中 满足条件则返回true
- func Count
返回指定字符串在被检索字符串中出现的次数,没有则返回0
- func Index
查询指定字符串在被检索字符串中首次出现的位置,不存在则返回-1
- func IndexByte
查询指定字符(byte)在被检索字符串中首次出现的位置,不存在则返回-1
- func IndexRune
查询指定Unicode编码值(rune)在被检索字符串中首次出现的位置,不存在则返回-1
- func IndexAny
查询指定字符串chars在被检索字符串中首次出现的位置,不存在则返回-1
- func IndexFunc
在字符串中获取第一个满足函数的位置,不存在则返回-1
示例:
f := func(c rune) bool {
return unicode.Is(unicode.Han, c)
}
fmt.Println(strings.IndexFunc("Hello, 世界", f)) // 7
fmt.Println(strings.IndexFunc("Hello, world", f)) // -1
- func LastIndex
查询指定字符串在被检索字符串中最后一次出现的位置,不存在则返回-1
- func LastIndexAny
查询指定字符串chars中的任一utf-8编码值在被检索字符串中最后一次出现的位置,不存在则返回-1
- func LastIndexFunc
在被检索字符串中返回最后一个满足函数unicode编码值的位置,不存在则返回-1
- func Title
将字符串以非下划线(_)为界限的字符串首字母进行大写返回
- func ToLower
返回所有字母都转为小写版本的拷贝
- func ToLowerSpecial
使用指定的字符映射,返回所有字母都转为小写版本的拷贝
- func ToUpper
返回所有字母都转为大写版本的拷贝
- func ToUpperSpecial
使用规定的字符映射,返回所有字母都转为大写版本的拷贝
- func ToTitle
返回将所有字母都转为对应的标题版本的拷贝
- func ToTitleSpecial
使用规定的字符映射,返回将所有字母都转为对应的标题版本的拷贝
- func Repeat
返回count个字符串,即5个"啊"返回"啊啊啊啊啊"
- func Replace
将字符串中前n个不重叠的指定字符串替换成新的字符串,如果n<0,则替换所有
- func Map
将字符串的每个字符进行遍历,用该字符的Unicode码值传入func.返回新的码值组成的字符串拷贝
- func Trim
将字符串的前后去除指定的字符并返回
- func TrimSpace
去除字符串前后端的所有空白(Unicode.IsSpace指定)都去掉并返回
- func TrimFunc
返回将字符串前后端所有满足func中Unicode码值的字符都去除的字符串
- func TrimLeft
返回将字符串前端所有指定字符都去掉的字符串
- func TrimLeftFunc
返回将字符串前端所有满足func中Unicode码值的字符都去掉的字符串
- func TrimPrefix
返回去除字符串中指定前缀的字符串
- func TrimRight
返回将字符串后端所有指定字符都去掉的字符串
- func TrimRightFunc
返回将字符串后端所有满足func中Unicode码值的字符都去掉的字符串
- func TrimSuffix
返回去除字符串中指定的后缀的字符串
- func Fields
将字符串按照空白符(Unicode.IsSpace确定,可以是一个到多个连续的空白符)分割的多个字符串返回.如果字符串全部都是空白则返回空切片
- func FieldsFunc
类似Fields方法,只是使用函数来确定分隔符是否满足
- func Split
以指定的字符进行切割
- func SplitN
指定标识符数量进行切割
数量大于0:返回切片最多n个子字符串
数量等于0:返回nil
数量小于0:返回所有的子字符串组成的切片
- func SplitAfter
在指定标识符后面进行切割且并保留分隔符
- func SplitAfterN
在指定标识符后面进行切割根据数量进行切割且并保留分隔符
数量>0:返回的切片最多n个子字符串
数量==0:返回nil
数量<0:返回所有子字符串的切片
- func Join
将切片按照指定的标识符进行拼接