strings

import “strings”

简介

strings包内包含字符串或字符的查找、替换、拆分、连接、映射、大小写转换、去头去尾等方法。

概览

strings包实现了操作字符串的简单函数。

内容

func Contains

  1. func Contains(s, substr string) bool

当且仅当字符串s包含字符串substr时,返回 true。

func ContainsAny

  1. func ContainsAny(s, chars string) bool

如果字符串s包含chars中的任意一个字符,则返回true。

func ContainsRune

  1. func ContainsRune(s string, r rune) bool

如果字符串s包含r所代表的rune字符,则返回true。

func Count

  1. func Count(s, sep string) int

返回字符串s中包含的字符串sep中的数量。特别注意当sep为空的时候,会返回字符串s加上字符串前后的空字符的新字符串的长度。

func EqualFold

  1. func EqualFold(s, t string) bool

比较字符串st,即当采用UTF-8编码,两者全部大写时若相等,则返回ture。

func Fields

  1. func Fields(s string) []string

按字符串s内的空白字符或者连续的空白字符来切割字符串s,并返回子串组成的切片。空白字符由unicode.IsSpace来定义。如果s只包含空白字符,那么返回空切片。

func FieldsFunc

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

按字符串s内的满足某种要求的rune字符来切割字符串s,并返回子串组成的切片。这种要求通过函数f来自定义。如果s只包含空白字符,那么返回空切片。也就是说,我们可以通过实现一个回调函数来指定分割字符串s的字符。

func HasPrefix

  1. func HasPrefix(s, prefix string) bool

判断字符串s是否以字符串prefix为前缀。如果是,则返回true。

func HasSuffix

  1. func HasSuffix(s, suffix string) bool

判断字符串s是否以字符串prefix为后缀。如果是,则返回true。

func Index

  1. func Index(s, sep string) int

返回字符串sep在字符串s中第一次出现处的索引。如果s中不包含sep,则返回-1。

func IndexAny

  1. func IndexAny(s, chars string) int

返回字符串chars中的任意字符在字符串s中第一次出现处的索引。如果s中不包含chars中的任何字符,则返回-1。

func IndexByte

  1. func IndexByte(s string, c byte) int

返回byte字符c在字符串s中第一次出现处的索引。如果s中不包含c,则返回-1。

func IndexFunc

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

返回符合某种要求的字符在字符串s中第一次出现处的索引,这种要求由函数f自定义。如果s中不存在这样的字符,则返回-1。

func IndexRune

  1. func IndexRune(s string, r rune) int

返回rune字符c在字符串s中第一次出现处的索引。如果s中不包含r,则返回-1。

func Join

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

把string切片连接成一个字符串并返回,切片元素用字符串sep连接。

func LastIndex

  1. func LastIndex(s, sep string) int

返回字符串sep在字符串s中最后一次出现处的索引。如果s中不包含sep,则返回-1。

func LastIndexAny

  1. func LastIndexAny(s, chars string) int

返回字符串chars中的任意字符在字符串s中最后一次出现处的索引。如果s中不包含chars中的任何字符,则返回-1。

func LastIndexFunc

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

返回符合某种要求的字符在字符串s中最后一次出现处的索引,这种要求由函数f自定义。如果s中不存在这样的字符,则返回-1。

func Map

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

按照某种规则将字符串s中的每个字符做映射处理,然后返回每个元素被映射后的字符串。这个规则通过函数mapping来自定义。如果mapping返回负数,则该字符被丢弃。

func Repeat

  1. func Repeat(s string, count int) string

返回一个由count个字符串s组成的新字符串

func Replace

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

将字符串s中的nold字符串用new字符串来替换。如果n小于0,则对要替换的old字符串个数没有限制。

func Split

  1. func Split(s, sep string) []string

以字符串sep来拆分字符串s,然后返回由该字符串拆分形成的子字符串切片。如果sep为空,那么按照UTF-8编码分隔每一个字符,等效于SplitN函数当count取值为-1的情形。

func SplitAfter

  1. func SplitAfter(s, sep string) []string

以字符串sep来拆分字符串s,然后返回由该字符串拆分形成的子字符串切片,除了最后的切片元素,每个元素以sep结尾(即保留sep)。如果sep为空,那么按照UTF-8编码分隔每一个字符,等效于SplitN函数当count取值为-1的情形。

func SplitAfterN

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

以字符串sep来拆分字符串s,然后返回由该字符串拆分形成的子字符串切片,除了最后的切片元素,每个元素以sep结尾(即保留step)。如果sep为空,那么按照UTF-8编码分隔每一个字符。可以通过最后一个参数 n 控制返回的结果中的 slice 中的元素个数,当 n < 0 时,返回所有的子字符串;当 n == 0 时,返回的结果是 nil;当 n > 0 时,表示返回的 slice 中最多只有 n 个元素,其中,最后一个元素不会分割。

func SplitN

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

以字符串sep来拆分字符串s,然后返回由该字符串拆分形成的子字符串切片。如果sep为空,那么按照UTF-8编码分隔每一个字符。可以通过最后一个参数 n 控制返回的结果中的 slice 中的元素个数,当 n < 0 时,返回所有的子字符串;当 n == 0 时,返回的结果是 nil;当 n > 0 时,表示返回的 slice 中最多只有 n 个元素,其中,最后一个元素不会分割。

func Title

  1. func Title(s string) string

将字符串中的每个单词的首字母转为大写,并返回一个新的字符串。

func ToLower

  1. func ToLower(s string) string

将字符串的每个字符转换为小写,然后返回一个新的字符串。

func ToLowerSpecial

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

TODO

func ToTitle

  1. func ToTitle(s string) string

将字符串的每个字符转换为大写,然后返回一个新的字符串。

func ToTitleSpecial

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

TODO

func ToUpper

  1. func ToUpper(s string) string

将字符串的每个字符转换为大写,然后返回一个新的字符串。

func ToUpperSpecial

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

TODO

func Trim

  1. func Trim(s string, cutset string) string

去掉字符串s的头部和尾部的一些字符并返回一个新的字符串。这些字符由字符串cutset自定义。

func TrimFunc

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

去掉字符串s的头部和尾部的一些字符并返回字符串。这些字符由满足函数f的字符自定义。

func TrimLeft

  1. func TrimLeft(s string, cutset string) string

去掉字符串s的头部的一些字符并返回字符串。这些字符由字符串cutset自定义。

func TrimLeftFunc

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

去掉字符串s的头部的一些字符并返回字符串。这些字符由满足函数f的字符自定义。

func TrimPrefix

  1. func TrimPrefix(s, prefix string) string

去掉字符s串头部的字符串prefix并返回子字符串。如果s不以prefix为头部,字符串s保持不变。

func TrimRight

  1. func TrimRight(s string, cutset string) string

去掉字符串s的尾部的一些字符并返回字符串。这些字符由字符串cutset自定义。

func TrimRightFunc

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

去掉字符串s的尾部的一些字符并返回字符串。这些字符由满足函数f的字符自定义。

func TrimSpace

  1. func TrimSpace(s string) string

去掉头部和尾部的空白符,包括空格、制表符、换行符。

func TrimSuffix

  1. func TrimSuffix(s, suffix string) string

去掉字符s串尾部的字符串suffix并返回子字符串。如果s不以suffix为尾部,字符串s保持不变。

type Reader struct

  1. type Reader struct {
  2. // contains filtered or unexported fields
  3. }

Reader 结构没有导出任何字段。它实现了 io.Reader(Read 方法),io.ReaderAt(ReadAt 方法),io.Seeker(Seek 方法),io.WriterTo(WriteTo 方法),io.ByteReader(ReadByte 方法),io.ByteScanner(ReadByte 和 UnreadByte 方法),io.RuneReader(ReadRune 方法) 和 io.RuneScanner(ReadRune 和 UnreadRune 方法)。

func NewReader

  1. func NewReader(s string) *Reader

读取字符串s,并返回一个Reader指针。类似于bytes.NewBuffer,但是更加高效并且是只读的。

func (*Reader) Len

  1. func (r *Reader) Len() int

返回未读到的字符串的长度。

func (*Reader) Read

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

将Reader类型r中的数据读入字节切片中。实现了io.Reader接口。

func (*Reader) ReadAt

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

将Reader类型r中的数据读入字节切片中,off指定了读取的偏移量。

func (*Reader) ReadByte

  1. func (r *Reader) ReadByte() (b byte, err error)

从Reader类型r中读出一个字节b并返回。

func (*Reader) ReadRune

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

TODO

func (*Reader) Seek

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

TODO

func (*Reader) UnreadByte

  1. func (r *Reader) UnreadByte() error

TODO

func (*Reader) UnreadRune

  1. func (r *Reader) UnreadRune() error

TODO

func (*Reader) WriteTo

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

将r中的数据读出并写入io.Writer对象w中。实现了io.WriterTo方法。

type Replacer

  1. type Replacer struct {
  2. // contains filtered or unexported fields
  3. }

func NewReplacer

  1. func NewReplacer(oldnew ...string) *Replacer

传入多个成对的string参数old、new,返回一个Replacer指针。

func (*Replacer) Replace

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

按照r所指定的替换规则来替换字符串s中的字符并返回字符串。

func (*Replacer) WriteString

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

按照Replacer类型r所指定的替换规则替换字符串s中的字符,并将处理后的字符串写入io.Writer对象w中。