golang中使用strings包完成对字符串的主要操作。
判断前缀/后缀
strings.HasPrefix(s, prefix string) bool //判断字符串s是否以字符串prefix作为开头,返回值为bool
strings.HasSuffix(s, suffix string) bool //判断字符串s是否以字符串suffix作为结尾,返回值为bool
//模拟实现
package MyStrings
//判断s字符串是否以prefix作为开头
func MyHasPrefix(s, prefix string) bool {
if len(s) <= 0 || len(prefix) <= 0 {
panic("str null")
}
if len(prefix) > len(s) {
return false
}
for k, _ := range prefix {
if s[k] != prefix[k] {
return false
}
}
return true
}
//模拟实现
package MyStrings
//go反转字符串
func reverse(s string)string {
if len(s) <= 0 {
panic("str null")
}
runes := []rune(s)
for begin, end := 0, len(s) - 1; begin < end ;begin, end = begin + 1, end - 1 {
runes[begin], runes[end] = runes[end], runes[begin]
}
return string(runes)
}
//同一个包中的public函数可以互相调用,不需要加上包名,也不需要import当前包
func MyHasSuffix(s, suffix string