在带有strings.SplitN的Golang中使用多个分隔符时,可以通过自定义一个分隔符函数来实现。下面是一个示例代码:
package main
import (
"fmt"
"strings"
)
func main() {
str := "Hello,World;Welcome|to-Golang"
separators := []string{",", ";", "|", "-"}
result := splitWithMultipleSeparators(str, separators)
fmt.Println(result)
}
func splitWithMultipleSeparators(str string, separators []string) []string {
// 定义一个匿名函数作为分隔符函数
separatorFunc := func(r rune) bool {
for _, sep := range separators {
if strings.ContainsRune(sep, r) {
return true
}
}
return false
}
// 使用strings.FieldsFunc函数进行分割
result := strings.FieldsFunc(str, separatorFunc)
return result
}
上述代码中,我们首先定义了一个字符串str
,它包含了多个分隔符(逗号、分号、竖线和减号)。然后,我们定义了一个separators
切片,其中包含了所有的分隔符。
接下来,我们定义了一个splitWithMultipleSeparators
函数,该函数接受一个字符串和一个分隔符切片作为参数。在该函数中,我们定义了一个匿名函数separatorFunc
作为分隔符函数。该函数会遍历分隔符切片,检查每个字符是否为分隔符。如果是分隔符,则返回true
,否则返回false
。
最后,我们使用strings.FieldsFunc
函数将字符串按照分隔符进行分割,并将结果返回。
这样,我们就可以在带有strings.SplitN
的Golang中使用多个分隔符进行字符串分割了。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云函数(SCF)。
领取专属 10元无门槛券
手把手带您无忧上云