go语言使用strings包

简介: go语言使用strings包

Go语言中的strings包提供了很多用于处理字符串的函数。这个包是标准库的一部分,因此在使用时不需要额外安装。下面是一些常用的strings包功能介绍和示例代码:

  1. 基础导入
    首先需要导入strings包:

    import "strings"
    
  2. 字符串比较

    • Equal(s, t string) bool: 检查两个字符串是否相等。
    • Compare(a, b string) int: 字典序比较两个字符串。
  3. 包含检查

    • Contains(s, substr string) bool: 判断s中是否包含子串substr
    • ContainsAny(s, chars string) bool: 判断s中是否含有chars里的任何一个字符。
    • ContainsRune(s string, r rune) bool: 判断s中是否含有Unicode码点r
  4. 替换与修改

    • Replace(s, old, new string, n int) string: 替换s中前n个出现的oldnew。如果n < 0则替换所有出现。
    • Repeat(s string, count int) string: 重复scount次。
    • ToTitle(s string) string: 将s转换为其标题形式(每个单词首字母大写)。
    • ToLower(s string) string: 转换成小写。
    • ToUpper(s string) string: 转换成大写。
  5. 分割与连接

    • Split(s, sep string) []string: 根据分隔符seps分割成多个子串。
    • Join(a []string, sep string) string: 使用sep作为分隔符连接切片a中的元素。
  6. 前后缀

    • HasPrefix(s, prefix string) bool: 检查s是否以prefix开头。
    • HasSuffix(s, suffix string) bool: 检查s是否以suffix结尾。
  7. 修剪空白

    • Trim(s string, cutset string) string: 移除s两端的cutset指定的字符。
    • TrimLeft(s string, cutset string) string: 只移除左边。
    • TrimRight(s string, cutset string) string: 只移除右边。
    • TrimSpace(s string) string: 移除s两边的空白字符。
  8. 索引查找

    • Index(s, substr string) int: 返回substrs中的第一个匹配位置,如果未找到返回-1。
    • LastIndex(s, substr string) int: 返回substrs中的最后一个匹配位置,如果未找到返回-1。
  9. 字段映射

    • Fields(s string) []string: 将s按空格分割成多个字段。
    • FieldsFunc(s string, f func(rune) bool) []string: 根据提供的函数f来决定如何分割字符串。

示例

package main
import (
    "fmt"
    "strings"
)

func main() {
   
    s := "Hello, World!"

    // 包含检查
    fmt.Println(strings.Contains(s, "World"))  // true

    // 字符串替换
    fmt.Println(strings.Replace(s, "World", "Golang", 1))  // Hello, Golang!

    // 分割
    parts := strings.Split(s, ", ")
    for _, part := range parts {
   
        fmt.Println(part)
    }

    // 连接
    fmt.Println(strings.Join([]string{
   "Hello", "World"}, " "))  // Hello World

    // 大小写转换
    fmt.Println(strings.ToUpper(s))  // HELLO, WORLD!
    fmt.Println(strings.ToLower(s))  // hello, world!
}

这些只是strings包提供的一部分功能。对于更复杂的需求,你可能还需要查看官方文档或探索其他相关包如strconvunicode/utf8等。

目录
相关文章
|
Go
Golang语言标准库 sync 包的 Once 怎么使用?
Golang语言标准库 sync 包的 Once 怎么使用?
53 0
|
3月前
|
Go 索引
【go笔记】标准库-strings
【go笔记】标准库-strings
|
4月前
|
存储 Go
go语言中fmt格式化包和内置函数汇总
【7月更文挑战第10天】本文介绍fmt包和`Errorf`用于创建格式化的错误消息。`fmt`包还涉及一些接口,如`Formatter`、`GoStringer`、`ScanState`、`Scanner`和`Stringer`,支持自定义格式化和输入/输出处理。
78 1
|
6月前
|
Go 索引
7天玩转 Golang 标准库之 sort
7天玩转 Golang 标准库之 sort
40 1
|
存储 Go 索引
Golang 语言标准库 bytes 包怎么使用?
Golang 语言标准库 bytes 包怎么使用?
47 0
|
Go
Golang 语言怎么高效拼接字符串?
Golang 语言怎么高效拼接字符串?
53 0
|
JSON 编解码 安全
Go语言常用内置包使用示例,值得拥有!
Go语言常用内置包使用示例,值得拥有!
145 0
|
存储 Go 开发者
100天精通Golang(基础入门篇)——第12天:深入解析Go语言中的集合(Map)及常用函数应用
100天精通Golang(基础入门篇)——第12天:深入解析Go语言中的集合(Map)及常用函数应用
56 0
|
存储 大数据 Go
100天精通Golang(基础入门篇)——第11天:深入解析Go语言中的切片(Slice)及常用函数应用
100天精通Golang(基础入门篇)——第11天:深入解析Go语言中的切片(Slice)及常用函数应用
104 0
|
安全 Go
Golang 语言的标准库 log 包怎么使用?
Golang 语言的标准库 log 包怎么使用?
62 0