AI智能
改变未来

golang基础小记(2)——字符串常用操作


字符串常用操作

代码示例:

package mainimport (\"fmt\"\"strings\")// 转义符// \\r: 回车符,返回行首,后续字符串会从行首覆盖该行字符串// \\n: 换行符// \\t: 制表符func main() {// 一对双引号内部的双引号需要转义才能使用;路径中的反斜杠需要转义才能正确输出fmt.Println(\"str := \\\"c:\\\\Code\\\\lesson1\\\\go.exe\\\"\") // str := \"c:\\Code\\lesson1\\go.exe\"// 多行字符串,反引号间换行将被作为字符串中的换行,但是所有的转义字符均无效,文本将会原样输出。s1 := `这是第一行\\n天苍苍野茫茫风吹草低现牛羊`fmt.Println(s1)// 字符串相关操作s2 := \"abc\"s3 := \"def\"// len(str): 求字符长度fmt.Println(len(s2)) // 3// +: 字符串拼接s4 := s2 + s3fmt.Println(s4) // abcdef// fmt.Sprintf(), 字符串拼接,返回拼接后的字符串s5 := fmt.Sprintf(\"%s %s\", s2, s3) // abc deffmt.Println(s5)// 分割, strings.Split(str, sep string), 返回 string 类型的切片s6 := \"a,b,c,d\"fmt.Println(strings.Split(s6, \",\")) // [a b c b]// 判断是否包含子串, strings.Contains(str, subStr string), 返回值是 bool 类型fmt.Println(strings.Contains(s6, \"a\")) //true// 判断子串是否是前缀fmt.Println(strings.HasPrefix(s6, \",\")) // false// 判断子串是否是后缀fmt.Println(strings.HasSuffix(s6, \"d\")) // trues7 := \"abab\"// 子串第一次出现的位置, 返回值是 int 类型fmt.Println(strings.Index(s7, \"a\")) // 0// 子串最后一次出现的位置, 返回值是 int 类型fmt.Println(strings.LastIndex(s7, \"a\")) // 2// strings.Join(elems []string, sep string), 将切片内元素用sep字符串拼接slice := []string{\"aaa\", \"bbb\", \"ccc\"}fmt.Println(strings.Join(slice, \"+\")) // aaa+bbb+ccc}

s1的输出(注意行数和缩进的变化):

这是第一行\\n天苍苍野茫茫风吹草低现牛羊这是最后一行

其它输出都在注释中

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » golang基础小记(2)——字符串常用操作