Go语言中‘String’包中的‘Cut‘函数的实现

Go语言中‘String’包中的’Cut’函数的实现

Cut函数用于在字符串**‘s’中查找子串’sep’,并将字符串’s’在子串 ‘sep’ 第一次出现的位置分割成两部分:beforeafter**

package main
import(
	"fmt"	
    "strings"
)
func main(){
    s := "hello,world"
    before, after, found := strings.Cut(s,",")
    if found {
        fmt.Println("Before: ", before)
        fmt.Pringln("After: ",after)
    }else {
        fmt.Println("Not found!")
    }
}

上述代码将会输出:
在这里插入图片描述


//Cut实现
func Cut(s, sep string)(before, after string, found bool){
    if i := Index(s, sep); i > 0 { // i为子串sep第一次出现的位置
        return s[:i],s[i+len(sep):],true
    }
    return s, "",false
}

return : 若找到了sep子串,使用切片操作将子串分割为两部分:从字符串开头到子串sep出现的位置为before,从子串sep出现的位置之后到字符串的末尾为after,true表示找到了子串sep

你可能感兴趣的:(Go语言,golang)