在 Go 语言中,字符串不同于Java、C++、 Python等其他语言。它是一系列可变宽度字符,其中每个字符都由一个或多个使用 UTF-8 编码的字节表示。
在 Go 字符串,您可以借助Count()函数计算字符串某些特定的 Unicode 代码点或costr (重复字符)的非重叠实例数。该函数返回其表示存在该字符串中的给定的字符串或Unicode代码点的总数的值。它定义在字符串包下,因此您必须在程序中导入字符串包才能访问 Count函数。
句法:
func Count(str, costr string) int
这里, str是原始字符串, costr是我们要计数的字符串。如果costr 的值为空,则此函数返回 1 + str 中的 Unicode 代码点数。
例子:
// Go program to illustrate how to
// count the elements of the string
package main
import (
"fmt"
"strings"
)
// Main function
func main() {
// Creating and initializing the strings
str1 := "Welcome to the online portal of GeeksforGeeks"
str2 := "My dog name is Dollar"
str3 := "I like to play Ludo"
// Displaying strings
fmt.Println("String 1: ", str1)
fmt.Println("String 2: ", str2)
fmt.Println("String 3: ", str3)
// Counting the elements of the strings
// Using Count() function
res1 := strings.Count(str1, "o")
res2 := strings.Count(str2, "do")
// Here, it also counts white spaces
res3 := strings.Count(str3, "")
res4 := strings.Count("GeeksforGeeks, geeks", "as")
// Displaying the result
fmt.Println("\nResult 1: ", res1)
fmt.Println("Result 2: ", res2)
fmt.Println("Result 3: ", res3)
fmt.Println("Result 4: ", res4)
}
输出:
String 1: Welcome to the online portal of GeeksforGeeks
String 2: My dog name is Dollar
String 3: I like to play Ludo
Result 1: 6
Result 2: 1
Result 3: 20
Result 4: 0