亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Golang中使用不定數(shù)量空格分割字符串的方法

 更新時(shí)間:2023年07月25日 10:15:10   作者:路多辛  
有這樣一個(gè)使用空格分割字符串的場(chǎng)景,字符串中被分割的子串之間的空格數(shù)量不確定,有一個(gè)兩個(gè)或者多個(gè)空格,這種場(chǎng)景下,使用最容易想到的strings.Split函數(shù)就做不到了,本文接下來(lái)就介紹幾種行之有效的方法,需要的朋友可以參考下

使用 strings.Fields 函數(shù)

strings.Fields 函數(shù)接受一個(gè)字符串類型的參數(shù),使用空格及多個(gè)連續(xù)的空格將字符串進(jìn)行分割,返回一個(gè)字符串切片,正好滿足了我們的需求。使用示例如下:

package main
import (
	"fmt"
	"strings"
)
func main() {
	str := "歡迎來(lái)到路多辛的博客 所思所想          很棒"
	s := strings.Fields(str)
	fmt.Println(s)
}

運(yùn)行看下效果:

$ go run main.go
[歡迎來(lái)到路多辛的博客 所思所想 很棒]

可以看出 str 中的子串雖然被數(shù)量不等的空格隔開,使用strings.Fields 函數(shù)處理后得到了一個(gè)字符串類型的切片,字符串被完美分割。

使用正則表達(dá)式

首先看下示例代碼:

package main
import (
	"fmt"
	"regexp"
)
func main() {
	str := "歡迎來(lái)到路多辛的博客 所思所想          很棒"
	reg := regexp.MustCompile(`\s+`)
	result := reg.Split(str, -1)
	fmt.Println(result)
}

運(yùn)行看下效果:

$ go run main.go
[歡迎來(lái)到路多辛的博客 所思所想 很棒]

得到了和上個(gè)示例一樣的數(shù)據(jù),首先使用 regexp.MustCompile 函數(shù)創(chuàng)建一個(gè)正則表達(dá)式,用于匹配一個(gè)或多個(gè)空格(\s+ 表示匹配至少一個(gè)空格字符)。然后使用 reg.Split 方法對(duì)字符串進(jìn)行分割,第二個(gè)參數(shù) -1 表示返回所有子串。

到此這篇關(guān)于Golang中使用不定數(shù)量空格分割字符串的方法的文章就介紹到這了,更多相關(guān)Golang空格分割字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Go之interface的具體使用

    Go之interface的具體使用

    這篇文章主要介紹了Go之interface的具體使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • 使用Go語(yǔ)言實(shí)現(xiàn)LRU緩存的代碼詳解

    使用Go語(yǔ)言實(shí)現(xiàn)LRU緩存的代碼詳解

    在日常開發(fā)中,緩存是提高系統(tǒng)性能的重要手段,LRU緩存是一種基于“最近最少使用”策略的緩存系統(tǒng),其目的是在空間受限的情況下保留最新、最常用的數(shù)據(jù),本文將詳細(xì)講解如何使用?Go?語(yǔ)言實(shí)現(xiàn)一個(gè)?LRU?緩存,需要的朋友可以參考下
    2024-11-11
  • 詳解Go語(yǔ)言中結(jié)構(gòu)體與JSON間的轉(zhuǎn)換

    詳解Go語(yǔ)言中結(jié)構(gòu)體與JSON間的轉(zhuǎn)換

    這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言中結(jié)構(gòu)體與JSON間的轉(zhuǎn)換,文中的示例代碼講解詳細(xì),對(duì)學(xué)習(xí)Go語(yǔ)言有一定的幫助,需要的可以參考一下
    2022-12-12
  • Go項(xiàng)目在linux服務(wù)器的部署詳細(xì)步驟

    Go項(xiàng)目在linux服務(wù)器的部署詳細(xì)步驟

    在今天的軟件開發(fā)中,使用Linux作為操作系統(tǒng)的比例越來(lái)越高,而Golang語(yǔ)言則因?yàn)槠涓咝?、?jiǎn)潔和并發(fā)性能等特點(diǎn),也被越來(lái)越多的開發(fā)者所青睞,這篇文章主要給大家介紹了關(guān)于Go項(xiàng)目在linux服務(wù)器的部署詳細(xì)步驟,需要的朋友可以參考下
    2023-09-09
  • 理解Golang中的數(shù)組(array)、切片(slice)和map

    理解Golang中的數(shù)組(array)、切片(slice)和map

    這篇文章主要介紹了理解Golang中的數(shù)組(array)、切片(slice)和map,本文先是給出代碼,然后一一分解,并給出一張內(nèi)圖加深理解,需要的朋友可以參考下
    2014-10-10
  • Golang定時(shí)器Timer與Ticker的使用詳解

    Golang定時(shí)器Timer與Ticker的使用詳解

    在 Go 里有很多種定時(shí)器的使用方法,像常規(guī)的 Timer、Ticker 對(duì)象,本文主要為大家介紹了Timer與Ticker的使用,感興趣的小伙伴可以了解一下
    2023-05-05
  • Golang定時(shí)器的2種實(shí)現(xiàn)方法與區(qū)別

    Golang定時(shí)器的2種實(shí)現(xiàn)方法與區(qū)別

    這篇文章主要給大家介紹了關(guān)于Golang定時(shí)器的2種實(shí)現(xiàn)方法與區(qū)別的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • GoFrame框架使用避坑指南和實(shí)踐干貨

    GoFrame框架使用避坑指南和實(shí)踐干貨

    這篇文章主要為大家介紹了GoFrame框架使用避坑指南和實(shí)踐干貨,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Golang中漏洞數(shù)據(jù)庫(kù)的使用詳解

    Golang中漏洞數(shù)據(jù)庫(kù)的使用詳解

    govulncheck是Golang中的漏洞掃描工具,它強(qiáng)大功能的背后,離不開?Go?漏洞數(shù)據(jù)庫(kù)(Go?vulnerability?database)的支持,所以本文就來(lái)為大家詳細(xì)講解下?Go?漏洞數(shù)據(jù)庫(kù)相關(guān)的知識(shí)
    2023-09-09
  • 詳解GO語(yǔ)言中[]byte與string的兩種轉(zhuǎn)換方式和底層實(shí)現(xiàn)

    詳解GO語(yǔ)言中[]byte與string的兩種轉(zhuǎn)換方式和底層實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了GO語(yǔ)言中[]byte與string的兩種轉(zhuǎn)換方式和底層實(shí)現(xiàn)的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考下
    2024-03-03

最新評(píng)論