📅  最后修改于: 2023-12-03 15:01:02.302000             🧑  作者: Mango
在Go中,我们可以使用strings包的HasSuffix函数来检查一个字符串是否以另一个字符串结尾。以下是关于如何使用该函数的一些示例代码和解释。
package main
import (
"fmt"
"strings"
)
func main() {
str1 := "hello world"
str2 := "world"
str3 := "golang"
// 检查字符串str1是否以str2结尾
if strings.HasSuffix(str1, str2) {
fmt.Println(str1, "ends with", str2)
} else {
fmt.Println(str1, "does not end with", str2)
}
// 检查字符串str1是否以str3结尾
if strings.HasSuffix(str1, str3) {
fmt.Println(str1, "ends with", str3)
} else {
fmt.Println(str1, "does not end with", str3)
}
}
输出:
hello world ends with world
hello world does not end with golang
在以上代码中,我们首先导入了fmt和strings包。然后我们定义了三个字符串str1、str2和str3,分别为"hello world"、"world"和"golang"。接下来我们使用strings.HasSuffix函数来检查str1是否以str2和str3结尾,然后分别输出结果到控制台。
在实际应用中,使用HasSuffix函数可以帮助我们过滤一些不需要的结果。例如,在搜索文件时,我们只需要输出以某个后缀结尾的文件名,可以使用如下代码:
package main
import (
"fmt"
"os"
"path/filepath"
"strings"
)
func main() {
root := "./"
suffix := ".go"
filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
if !info.IsDir() && strings.HasSuffix(info.Name(), suffix) {
fmt.Println(path)
}
return nil
})
}
在以上代码中,我们使用filepath.Walk函数来遍历指定目录下的所有文件和文件夹,并调用一个匿名函数来处理每个文件和文件夹。在匿名函数中,我们首先检查文件是否是一个文件夹,如果不是,则检查文件是否以指定的后缀结尾。如果文件名符合条件,则输出文件路径到控制台。这种方法可以过滤掉那些不需要的文件,只留下我们需要的文件。
以上就是关于Golang检查字符串以结尾的介绍,希望对大家有所帮助。