go strings.TrimPrefix() 和 strings.TrimLeft()
总结:
1. strings.TrimPrefix() 函数很简单,就是删掉一样的前缀
2. strings.TrimLeft() 函数不仅仅删除一样的前缀,若剩下的字符串中有跟前缀一样的字符,也会删掉
实验如下图:
代码如下:
package main
import ("fmt""strings"
)
func main() {fmt.Println("删除前缀字符串 TrimPrefix()函数 测试")src := "xxabcdefg"// 由于src的开头和pre1一致,所以返回删除pre1后的内容,即"defg"pre1 := "xxabc"result1 := strings.TrimPrefix(src, pre1)fmt.Printf("删除前:%v, 前缀:%v, 删除后:%v \n", src, pre1, result1)// 由于src的开头和pre2不一致,所以不做修改,直接返回原来的内容pre2 := "abc"result2 := strings.TrimPrefix(src, pre2)fmt.Printf("删除前:%v, 前缀:%v, 删除后:%v \n\n", src, pre2, result2)fmt.Println("删除前缀,且删除剩下内容中的左侧和前缀中一样的字符 TrimLeft()函数 测试")// 由于srcstr的开头和pre3的一致,第一步:删除pre3,即"mysql",剩下"myour"; 第二步:剩下的"myour"中,左侧开头的"my"和pre3开头一样所以也删除,剩下"our"srcstr := "mysqlmyour"pre3 := "mysql"result3 := strings.TrimLeft(srcstr, pre3)fmt.Printf("删除前:%v, 前缀:%v, 删除后:%v \n", srcstr, pre3, result3)// 由于srcstr2的开头和pre4的一致,第一步:删除pre4,即"mysql",剩下"ourmy"; 第二步:剩下的"ourmy",左侧开头的内容和pre4开头不一样,所以不做操作,直接返回srcstr2 := "mysqlourmy"pre4 := "mysql"result4 := strings.TrimLeft(srcstr2, pre4)fmt.Printf("删除前:%v, 前缀:%v, 删除后:%v \n", srcstr2, pre4, result4)
}