阅读(3102) (9)

GoFrame gstr-切分组合

2022-04-11 15:14:07 更新

Split

  • 说明:​Split​用​delimiter​将​str​拆分为​[]string​。  
  • 格式:

Split(str, delimiter string) []string

  • 示例:

func ExampleSplit() {
	var (
		str       = `a|b|c|d`
		delimiter = `|`
		result    = gstr.Split(str, delimiter)
	)
	fmt.Printf(`%#v`, result)

	// Output:
	// []string{"a", "b", "c", "d"}
}

SplitAndTrim

  • 说明: ​SplitAndTrim​使用​delimiter​将​str​拆分为​[]string​,并对​[]string​的每个元素调用​Trim​,并忽略在​Trim​之后为空的元素。  
  • 格式:

SplitAndTrim(str, delimiter string, characterMask ...string) []string

  • 示例:

func ExampleSplitAndTrim() {
	var (
		str       = `a|b|||||c|d`
		delimiter = `|`
		result    = gstr.SplitAndTrim(str, delimiter)
	)
	fmt.Printf(`%#v`, result)

	// Output:
	// []string{"a", "b", "c", "d"}
}

Join

  • 说明:​Join​将​array​中的每一个元素连接并生成一个新的字符串。参数​sep​会作为新字符串的分隔符。
  • 格式:

Join(array []string, sep string) string

  • 示例:

func ExampleJoin() {
	var (
		array  = []string{"goframe", "is", "very", "easy", "to", "use"}
		sep    = ` `
		result = gstr.Join(array, sep)
	)
	fmt.Println(result)

	// Output:
	// goframe is very easy to use
}

JoinAny

  • 说明:​JoinAny​将​array​中的每一个元素连接并生成一个新的字符串。参数​sep​会作为新字符串的分隔符。参数​array​可以是任意的类型。
  • 格式:

JoinAny(array interface{}, sep string) string

  • 示例:

func ExampleJoinAny() {
	var (
		sep    = `,`
		arr2   = []int{99, 73, 85, 66}
		result = gstr.JoinAny(arr2, sep)
	)
	fmt.Println(result)

	// Output:
	// 99,73,85,66
}

Explode

  • 说明:​Explode​使用分隔符​delimiter​字符串​str​拆分成​[]string
  • 格式:

Explode(delimiter, str string) []string

  • 示例:

func ExampleExplode() {
	var (
		str       = `Hello World`
		delimiter = " "
		result    = gstr.Explode(delimiter, str)
	)
	fmt.Printf(`%#v`, result)

	// Output:
	// []string{"Hello", "World"}
}

Implode

  • 说明:​Implode​使用​glue​连接​pieces​字符串数组的每一个元素。
  • 格式:

Implode(glue string, pieces []string) string

  • 示例:

func ExampleImplode() {
	var (
		pieces = []string{"goframe", "is", "very", "easy", "to", "use"}
		glue   = " "
		result = gstr.Implode(glue, pieces)
	)
	fmt.Println(result)

	// Output:
	// goframe is very easy to use
}

ChunkSplit

  • 说明:​ChunkSplit​将字符串拆分为单位为​chunkLen​长度更小的每一份,并用​end​连接每一份拆分出的字符串。
  • 格式:

ChunkSplit(body string, chunkLen int, end string) string

  • 示例:

func ExampleChunkSplit() {
	var (
		body     = `1234567890`
		chunkLen = 2
		end      = "#"
		result   = gstr.ChunkSplit(body, chunkLen, end)
	)
	fmt.Println(result)

	// Output:
	// 12#34#56#78#90#
}

Fields

  • 说明:​Fields​以​[]string​的形式返回字符串中的每个单词。
  • 格式:

Fields(str string) []string

  • 示例:

func ExampleFields() {
	var (
		str    = `Hello World`
		result = gstr.Fields(str)
	)
	fmt.Printf(`%#v`, result)

	// Output:
	// []string{"Hello", "World"}
}