[golang] 字串操作的常見應用範例
- 取得連結
- X
- 以電子郵件傳送
- 其他應用程式
1. 字串連接
package main
import (
"fmt"
"strings"
)
func main() {
// 使用 "+" 連接
str1 := "Hello"
str2 := "World"
combined := str1 + " " + str2
fmt.Println(combined) // Output: Hello World
// 使用 strings.Join
words := []string{"Go", "is", "awesome"}
result := strings.Join(words, " ")
fmt.Println(result) // Output: Go is awesome
}
2. 字串分割
package main
import (
"fmt"
"strings"
)
func main() {
str := "apple,banana,cherry"
split := strings.Split(str, ",")
fmt.Println(split) // Output: [apple banana cherry]
}
3. 字串搜尋
package main
import (
"fmt"
"strings"
)
func main() {
str := "Golang is fun!"
// 搜尋子字串是否存在
fmt.Println(strings.Contains(str, "fun")) // Output: true
// 搜尋子字串的索引
fmt.Println(strings.Index(str, "is")) // Output: 7
}
4. 字串取代
package main
import (
"fmt"
"strings"
)
func main() {
str := "I love cats, cats are cute."
replaced := strings.ReplaceAll(str, "cats", "dogs")
fmt.Println(replaced) // Output: I love dogs, dogs are cute.
}
5. 字串大小寫轉換
package main
import (
"fmt"
"strings"
)
func main() {
str := "Hello, Golang!"
fmt.Println(strings.ToUpper(str)) // Output: HELLO, GOLANG!
fmt.Println(strings.ToLower(str)) // Output: hello, golang!
}
6. 去除空白字元
package main
import (
"fmt"
"strings"
)
func main() {
str := " Hello, Golang! "
trimmed := strings.TrimSpace(str)
fmt.Println(trimmed) // Output: Hello, Golang!
}
7. 字串重複
package main
import (
"fmt"
"strings"
)
func main() {
str := "Go "
repeated := strings.Repeat(str, 3)
fmt.Println(repeated) // Output: Go Go Go
}
8. 字串格式化
package main
import "fmt"
func main() {
name := "Alice"
age := 25
formatted := fmt.Sprintf("My name is %s and I am %d years old.", name, age)
fmt.Println(formatted) // Output: My name is Alice and I am 25 years old.
}
9. 字串反轉
package main
import "fmt"
func reverseString(s string) string {
runes := []rune(s)
for i, j := 0, len(runes)-1; i < j; i, j = i+1, j-1 {
runes[i], runes[j] = runes[j], runes[i]
}
return string(runes)
}
func main() {
str := "Golang"
reversed := reverseString(str)
fmt.Println(reversed) // Output: gnalog
}
10. 檢查字串是否以某前綴或後綴開始/結束
package main
import (
"fmt"
"strings"
)
func main() {
str := "hello_world.go"
// 是否以某前綴開始
fmt.Println(strings.HasPrefix(str, "hello")) // Output: true
// 是否以某後綴結束
fmt.Println(strings.HasSuffix(str, ".go")) // Output: true
}
- 取得連結
- X
- 以電子郵件傳送
- 其他應用程式
留言
張貼留言