06.字符和字符串处理

  字符和字符串处理是编程中非常常见的任务。不同的编程语言提供了各种内置函数和方法来处理字符和字符串。在 Go 语言中,字符串处理有其独特的方式。以下是一些常见的字符和字符串处理操作及其示例:

1. 字符串创建与初始化#

复制代码
package main

import "fmt"

func main() {
    // 字符串字面量
    s1 := "Hello, World!"
    
    // 使用字符串的另一种表示法
    s2 := `Hello, World!`
    
    fmt.Println(s1)
    fmt.Println(s2)
}
复制代码

 

2. 字符串长度#

package main

import "fmt"

func main() {
    s := "Hello, 世界"
    fmt.Println(len(s)) // 输出字符串的字节长度
}

 

3. 字符串遍历#

复制代码
package main

import "fmt"

func main() {
    s := "Hello, World"
    
    // 按字节遍历
    for i := 0; i < len(s); i++ {
        fmt.Printf("%c ", s[i])
    }
    fmt.Println()
    
    // 按字符遍历
    for _, r := range s {
        fmt.Printf("%c ", r)
    }
    fmt.Println()
}
复制代码

 

4. 字符串拼接#

复制代码
package main

import (
    "fmt"
    "strings"
)

func main() {
    s1 := "Hello"
    s2 := "World"
    
    // 使用 + 操作符
    s3 := s1 + ", " + s2 + "!"
    fmt.Println(s3)
    
    // 使用 strings.Join 函数
    s4 := strings.Join([]string{s1, s2}, ", ")
    fmt.Println(s4)
}
复制代码

 

5. 字符串分割#

复制代码
package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "a,b,c,d,e"
    
    // 分割字符串
    parts := strings.Split(s, ",")
    fmt.Println(parts)
}
复制代码

 

6. 字符串查找#

复制代码
package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "Hello, World!"
    
    // 查找子串的位置
    pos := strings.Index(s, "World")
    fmt.Println(pos)
    
    // 检查子串是否存在
    contains := strings.Contains(s, "Hello")
    fmt.Println(contains)
}
复制代码

 

7. 字符串替换#

复制代码
package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "Hello, World!"
    
    // 替换子串
    s = strings.Replace(s, "World", "Go", 1)
    fmt.Println(s)
}
复制代码

 

 

8. 字符串转换#

复制代码
package main

import (
    "fmt"
    "strconv"
)

func main() {
    // 整数转字符串
    i := 123
    s := strconv.Itoa(i)
    fmt.Println(s)
    
    // 字符串转整数
    s = "456"
    i, err := strconv.Atoi(s)
    if err != nil {
        fmt.Println("Error:", err)
    }
    fmt.Println(i)
}
复制代码

 

9. 字符串修剪#

复制代码
package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "  Hello World  "
    trimmedS := strings.TrimSpace(s)
    fmt.Println(trimmedS) // 输出:Hello World
}
复制代码

 

 

posted @   JJJhr  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示
CONTENTS