5K+ 次浏览
Golang 的 strings 包有一个 Replace() 函数,我们可以用它来替换字符串中的某些字符为新值。它只替换子字符串指定的 "n" 次出现。除了 Replace() 之外,还有一个 ReplaceAll() 函数可以将给定子字符串的所有出现都替换为新值。语法 func Replace(s, old, new string, n int) string 其中,s 是给定的字符串,old 是我们要替换的字符串,new 是将替换 old 字符串的字符串,n 表示我们要在给定字符串中替换的字符数。示例 以下示例演示了… 阅读更多
756 次浏览
Golang 的 strings 包提供了一个 Fields() 方法,可用于在一个或多个连续空格字符周围分割字符串。Fields() 函数通过删除所有空格字符(包括换行符)来将给定字符串分割成子字符串。它将多个连续空格视为单个空格。语法 func Fields(s string) []string 其中 s 是字符串参数。示例 让我们考虑以下示例 − package main import ( "fmt" "strings" ) func main() { // 初始化字符串 string1 := " The Golang Programming Language " // 显示字符串 fmt.Println("输入字符串:", string1) ... 阅读更多
537 次浏览
Golang 中的 EqualFold() 函数是 strings 包的一个内置函数,用于检查给定的字符串(UTF-8 字符串)是否相等。比较不区分大小写。它接受两个字符串参数,如果两个字符串在 Unicode 小写转换下相等(即不区分大小写),则返回 True,否则返回 False。语法 func EqualFold(s, t string) bool 其中 s 和 t 是字符串。它返回一个布尔值。示例 以下示例演示了如何在 Go 程序中使用 EqualFold() − package main import ( "fmt" "strings" ) func main() { // 初始化字符串 R := "Welcome to Tutorialspoint" ... 阅读更多
4K+ 次浏览
Count() 是 Golang 中的内置函数,可用于计算字符串中字符/字符串的不重叠实例数。语法 func Count(s, sep string) int 其中,s – 原字符串,sep – 我们要计数的子字符串。它返回一个整数值。示例 以下示例演示了如何在 Go 程序中使用 Count() 函数。 package main import ( "fmt" "strings" ) func main() { // 初始化字符串 x := "Golang Programming Language" y := "Language" // 显示字符串 fmt.Println("第一个字符串:", x) fmt.Println("第二个字符串:", y) ... 阅读更多
795 次浏览
Golang 有一个名为 ContainsAny() 的内置字符串函数,我们可以用它来检查给定字符串中是否存在指定的字符串。ContainsAny() 与 Contains() 完全不同。Contains() 用于检测字符串是否包含子字符串。ContainsAny() 用于检测字符串是否包含提供的字符串中的任何字符。如果指定的字符串的一个字符存在于原始给定字符串中,则返回 True,否则返回 False。语法 func ContainsAny(s, chars string) bool 其中,s – 原字符串,chars string – 我们定义字符串或字符的子字符串。它返回一个布尔值。示例 ContainsAny() 区分大小写,… 阅读更多
Golang 有一个名为 Compare() 的内置字符串函数,我们可以用它来比较两个字符串。这里的字符串使用字典序进行比较。语法 func Compare(a, b string) int 返回类型 如果字符串 (a == b),则返回 0。如果字符串 (a > b),则返回 1。如果字符串 (a < b),则返回 -1。示例 让我们考虑以下示例 − package main // 导入 fmt 和 strings import ( "fmt" "strings" ) func main() { // 初始化变量 var a1 = "a" var a2 = "b" var a3 = "welcome" var a4 ... 阅读更多
6K+ 次浏览
Golang 有一组内置的字符串函数,我们可以利用它们对字符串数据执行不同类型的操作。Contains() 就是这样一个函数,可用于搜索给定字符串中是否存在特定文本/字符串/字符。如果文本/字符串/字符存在于给定字符串中,则返回 True;否则返回 False。语法 func Contains(s, substr string) bool 其中,s 是原始字符串,substr 是要与原始字符串一起检查的字符串。示例 以下示例演示了 Contains() 的工作方式 − package main // 导入 fmt 和 strings import ( "fmt" ... 阅读更多
39K+ 次浏览
为了检查 Golang 中给定目录中是否存在特定文件,我们可以使用 Go 标准库的 os 包提供的 Stat() 和 isNotExists() 函数。Stat() 函数用于返回描述文件的 file info 结构。让我们首先只使用 Stat() 函数,看看它是否足以检测 Go 中文件的存在。示例 1 考虑以下代码。 package main import( "fmt" "os" ) func main() { if _, err := os.Stat("sample.txt"); err == nil { fmt.Printf("文件 ... 阅读更多
运行多个 goroutine 时,可能会出现一些 panic。为了处理这种情况,我们可以结合使用 channel 和 waitgroups 来成功处理错误,而不是退出进程。假设有一个函数,当调用时会返回 panic,这会自动终止程序的执行,因为当调用 panic 时,它会在内部调用 os.Exit() 函数。我们要确保此 panic 不会关闭程序,为此,我们将创建一个 channel 来存储错误,然后我们稍后可以使用它… 阅读更多
7K+ 次浏览
我们知道 goroutine 最初可能有点棘手,而且我们经常会发现主 goroutine 会在不给内部 goroutine 执行机会的情况下退出。为了能够运行 goroutine 直到完成,我们可以使用充当阻塞器的 channel,或者可以使用 Go 的 sync 包提供的 waitGroups。让我们首先探索一个我们想要完成单个 goroutine 然后执行其他工作的案例。示例 1 考虑以下代码。 package main import ( "fmt" ... 阅读更多