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 @ 2024-07-09 02:01  JJJhr  阅读(6)  评论(0编辑  收藏  举报