Golang学习 - strings 包

--------------------

strings 包与 bytes 包中的函数用法基本一样,不再赘述。 只对 Replacer 进行说明。

// 转换

func ToUpper(s string) string

func ToLower(s string) string

func ToTitle(s string) string

func ToUpperSpecial(_case unicode.SpecialCase, s string) string

func ToLowerSpecial(_case unicode.SpecialCase, s string) string

func ToTitleSpecial(_case unicode.SpecialCase, s string) string

func Title(s string) string

--------------------

// 比较

func Compare(a, b string) int

func EqualFold(s, t string) bool

--------------------

// 清理

func Trim(s string, cutset string) string

func TrimLeft(s string, cutset string) string

func TrimRight(s string, cutset string) string

func TrimFunc(s string, f func(rune) bool) string

func TrimLeftFunc(s string, f func(rune) bool) string

func TrimRightFunc(s string, f func(rune) bool) string

func TrimSpace(s string) string

func TrimPrefix(s, prefix string) string

func TrimSuffix(s, suffix string) string

--------------------

// 拆合

func Split(s, sep string) []string

func SplitN(s, sep string, n int) []string

func SplitAfter(s, sep string) []string

func SplitAfterN(s, sep string, n int) []string

func Fields(s string) []string

func FieldsFunc(s string, f func(rune) bool) []string

func Join(a []string, sep string) string

func Repeat(s string, count int) string

--------------------

// 子串

func HasPrefix(s, prefix string) bool

func HasSuffix(s, suffix string) bool

func Contains(s, substr string) bool

func ContainsRune(s string, r rune) bool

func ContainsAny(s, chars string) bool

func Index(s, sep string) int

func IndexByte(s string, c byte) int

func IndexRune(s string, r rune) int

func IndexAny(s, chars string) int

func IndexFunc(s string, f func(rune) bool) int

func LastIndex(s, sep string) int

func LastIndexByte(s string, c byte) int

func LastIndexAny(s, chars string) int

func LastIndexFunc(s string, f func(rune) bool) int

func Count(s, sep string) int

--------------------

// 替换

func Replace(s, old, new string, n int) string

func Map(mapping func(rune) rune, s string) string

--------------------

type Reader struct { ... }

func NewReader(s string) *Reader

func (r *Reader) Read(b []byte) (n int, err error)

func (r *Reader) ReadAt(b []byte, off int64) (n int, err error)

func (r *Reader) WriteTo(w io.Writer) (n int64, err error)

func (r *Reader) Seek(offset int64, whence int) (int64, error)

func (r *Reader) ReadByte() (byte, error)

func (r *Reader) UnreadByte() error

func (r *Reader) ReadRune() (ch rune, size int, err error)

func (r *Reader) UnreadRune() error

func (r *Reader) Len() int

func (r *Reader) Size() int64

func (r *Reader) Reset(s string)

--------------------

type Replacer struct { ... }

// 创建一个替换规则,参数为“查找内容”和“替换内容”的交替形式。

// 替换操作会依次将第 1 个字符串替换为第 2 个字符串,将第 3 个字符串

// 替换为第 4 个字符串,以此类推。

// 替换规则可以同时被多个例程使用。

func NewReplacer(oldnew ...string) *Replacer

// 使用替换规则对 s 进行替换并返回结果。

func (r *Replacer) Replace(s string) string

// 使用替换规则对 s 进行替换并将结果写入 w。

// 返回写入的字节数和遇到的错误。

func (r *Replacer) WriteString(w io.Writer, s string) (n int, err error)