45-string-func

//   标准库strings包提供了很多有用的字符串相关函数。

package main

import (
	"fmt"
	s "strings"
)

// 为 fmt.Println 创建别名 p
var p = fmt.Println

func main() {
	//  这些都是strings包的函数,而不是字符串对象自身的方法
	// 需要将待处理的字符串作为第一个参数传递给函数
	p("Contains:\t", s.Contains("test", "es"))
	p("Count:\t\t", s.Count("test", "t"))
	p("HasPrefix:\t", s.HasPrefix("test", "te"))
	p("HasSuffix:\t", s.HasSuffix("test", "st"))
	p("Index:\t\t", s.Index("test", "e"))
	p("Join:\t\t", s.Join([]string{"a", "b"}, "-"))
	p("Repeat:\t\t", s.Repeat("a", 5))
	p("Replace:\t", s.Replace("foo", "o", "0", -1))
	p("Split:\t\t", s.Split("a-b-c-d-e", "-"))
	p("ToLower:\t", s.ToLower("TEST"))
	p("ToUpper:\t", s.ToUpper("test"))
	p()

	// 以下函数不是strings包中的函数

	// 以字节的形式获取字符串的长度
	p("Len:\t\t", len("hello"))
	// 以字节的形式获取字节在字符串中的索引
	p("Char:\t\t", "hello"[1])
	//  需要注意的是,上面两个函数都是工作中字节级别的

	// Go使用UTF-8编码字符串,所以这两个函数通常很有用
	// 如果正在使用可能的多字节字符,则需要使用编码感知操作,查看这片博文 https://blog.golang.org/strings
}
上次修改: 10 January 2020