go语言中字符串分割

Posted yangzhan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言中字符串分割相关的知识,希望对你有一定的参考价值。

go语言中字符串的分割分以下几种:

1、根据空格键进行分割

  方法:strings.Fields(s string) []string

    s:要分割的字符串

    返回结果为[]string

  例:  s:=" ab cd          ef gh ij kl "

      arr:=strings.Fields(s)

      fmt.Printf("arr:%q\n",arr)

  结果为:arr:["ab" "cd" "ef" "gh" "ij" "kl"]

  注: 1、分割结果是不包含空字符串的,比如ab前面有一个空格,kl后面也有一个空格,但是分割的结果为 :["ab" "cd" "ef" "gh" "ij" "kl"],而并非: ["" "ab" "cd" "ef" "gh" "ij" "kl" ""]。分割长度为6,而并非是8

    2、如果要分割的字符串有多个连续空格出现的话也会,并不会进行多次分割,例如上例中cd和ef之间出现了多个连续空格,结果为: ["ab" "cd" "ef" "gh" "ij" "kl"],而并非:["ab" "cd" "" "" "" "" "ef" "gh" "ij" "kl"]

2、根据某个字符串对另一个字符串进行分割

  方法:strings.Split(s,sep string) []string

    s:要分割的字符串

    sep:要去掉的字符串

    返回结果为[]string

  例:  s:="iiaiibiiciiiidiiii"

      sep:="ii"

      arr:=strings.Split(s,sep)

      fmt.Println("arr:",arr)

  结果为:arr:["" "a" "b" "c" "" "d" "" ""]

  注:当sep=""时,会根据""进行分割,即结果为:arr:["i" "i" "a" "i" "i" "b" "i" "i" "c" "i" "i" "i" "i" "d" "i" "i" "i" "i"]

 

以上是关于go语言中字符串分割的主要内容,如果未能解决你的问题,请参考以下文章

go语言学习笔记 — 基础 — 基本数据类型 — 字符串:字符串分割,获取字符串的某段子串substring

go语言文件操作

字符串分割的实现

c语言中 如何分割字符串

算法学习1221. 分割平衡字符串(java / c / c++ / python / go / rust)

Go语言编程中字符串切割方法小结