欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Golang字符串常用函數(shù)的使用

 更新時間:2021年12月09日 10:16:48   作者:kuteng  
Golang提供了許多內(nèi)置的字符串函數(shù),這些函數(shù)可在處理字符串?dāng)?shù)據(jù)時幫助執(zhí)行一些操作,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

Golang提供了許多內(nèi)置的字符串函數(shù),這些函數(shù)可在處理字符串?dāng)?shù)據(jù)時幫助執(zhí)行一些操作。Golang字符串函數(shù)是核心部分。使用此功能無需安裝,僅需要導(dǎo)入“字符串”包。重要的Golang字符串函數(shù)列表如下:

1)Golang字符串包含功能[區(qū)分大小寫]

您可以使用Contains()在字符串中搜索特定的文本/字符串/字符。它返回true或false的輸出。如果在字符串2中找到字符串1,則返回true。如果在字符串2中找不到字符串1,則返回false。

語法:

func Contains(s, substr string) bool

DEMO

package main
import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Contains("我是中國人", "中國"))   //true
    fmt.Println(strings.Contains("I like golang", "like"))   //true
    fmt.Println(strings.Contains("www.topgoer.com", "topgoer"))  //true
    fmt.Println(strings.Contains("www.TopgoEr.com", "topgoer"))  //false
    fmt.Println(strings.Contains("www.TopgoEr com", " "))   //true
}

輸出結(jié)果
true
true
true
false
true

2)Golang ContainsAny()[區(qū)分大小寫]

您可以使用ContainsAny()在字符串中搜索特定的文本/字符串/字符。它返回true或false的輸出。如果在字符串中找到字符的unicode,則它返回true,否則輸出將為false。您可以在下面的程序中看到ContainsAny與Contains的比較。

句法:

func ContainsAny(s,chars string)bool

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.ContainsAny("Golang", "g"))    //true
    fmt.Println(strings.ContainsAny("Golang", "l & a"))  //true
    fmt.Println(strings.ContainsAny("GolAng", "a"))      // false
    fmt.Println(strings.ContainsAny("Golang", "G"))     //true
    fmt.Println(strings.ContainsAny("GOLANG", "GOLANG"))   //true
    fmt.Println(strings.ContainsAny("GOLANG", "golang"))   // false
    fmt.Println(strings.ContainsAny("Shell-12541", "1"))  //true
    //  Contains vs ContainsAny
    fmt.Println(strings.ContainsAny("Shell-12541", "1-2")) // true
    fmt.Println(strings.Contains("Shell-12541", "1-2"))   // false
}

輸出結(jié)果
true
true
false
true
true
false
true
true
false

3)Golang Count() [區(qū)分大小寫]

此函數(shù)計算字符串中字符/字符串/文本的不重疊實(shí)例的數(shù)量。

語法:

func Count(s,sep string)int

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Count("topgoer", "t"))   //1
    fmt.Println(strings.Count("Topgoer", "T"))   //1
    fmt.Println(strings.Count("Topgoer", "M"))   //0
    fmt.Println(strings.Count("Topgoer", "goer"))   // 1
    fmt.Println(strings.Count("Topgoer", "wwwTopgoercom"))   // 0
    fmt.Println(strings.Count("Shell-25152", "-25"))  //1
    fmt.Println(strings.Count("Shell-25152", "-21"))  //0
    fmt.Println(strings.Count("test", ""))    // length of string + 1   5
    fmt.Println(strings.Count("test", " "))   //0
}

輸出結(jié)果
1
1
0
1
0
1
0
5
0

4)Golang EqualFold() [不區(qū)分大小寫]

使用EqualFold,您可以檢查兩個字符串是否相等。如果兩個字符串相等,則返回輸出true,如果兩個字符串都不相等,則返回false。

語法

func EqualFold(s,t string)bool

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.EqualFold("Topgoer", "TOPGOER"))   //true
    fmt.Println(strings.EqualFold("Topgoer", "topgoer"))   //true
    fmt.Println(strings.EqualFold("Topgoer", "Topgoercom"))  //false
    fmt.Println(strings.EqualFold("Topgoer", "goer"))      //false
    fmt.Println(strings.EqualFold("Topgoer", "Topgoer & goer"))   //false
    fmt.Println(strings.EqualFold("Topgoer-1254", "topgoer-1254"))  //true
    fmt.Println(strings.EqualFold(" ", " "))  // single space both side   //true
    fmt.Println(strings.EqualFold(" ", "  "))  // double space right side  //false
}

輸出結(jié)果
true
true
false
false
false
true
true
false

5) Golang Fields()

Fields函數(shù)將一個或多個連續(xù)空白字符的每個實(shí)例周圍的字符串分解為一個數(shù)組。

語法

func Fields(s string) []string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    testString := "I love my country"
    testArray := strings.Fields(testString)
    for _, v := range testArray {
        fmt.Println(v)
    }
}

輸出結(jié)果
I
love
my
country

6)Golang FieldsFunc()

FieldsFunc函數(shù)在每次運(yùn)行滿足f(c)的Unicode代碼點(diǎn)c時都將字符串s斷開,并返回s的切片數(shù)組。您可以使用此功能按數(shù)字或特殊字符的每個點(diǎn)分割字符串。檢查以下兩個FieldsFunc示例:

語法

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

DEMO

package main

import (
    "fmt"
    "strings"
    "unicode"
)

func main() {

    x := func(c rune) bool {
        return !unicode.IsLetter(c)
    }
    strArray := strings.FieldsFunc(`I love my country – I,love?my!country
                                 I, love, my – country`,x)
    for _, v := range strArray {
        fmt.Println(v)
    }

    fmt.Println("\n*****************Split by number*******************\n")

    y := func(c rune) bool {
        return unicode.IsNumber(c)
    }
    testArray := strings.FieldsFunc(`1 I love my country.2 I love my,country.3 I-love my country.4 I love my?country`,y)
    for _, w := range testArray {
        fmt.Println(w)
    }
}

輸出結(jié)果
I
love
my
country
I
love
my
country
I
love
my
country

*****************Split by number*******************

?I love my country.
?I love my,country.
?I-love my country.
?I love my?country

7)Golang HasPrefix()

HasPrefix函數(shù)檢查字符串s是否以指定的字符串開頭。如果字符串S以前綴字符串開頭,則返回true,否則返回false。

語法

func HasPrefix(s, prefix string) bool

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.HasPrefix("Topgoer", "Top"))    //true
    fmt.Println(strings.HasPrefix("Topgoer", "top"))    //false
    fmt.Println(strings.HasPrefix("Topgoer", "ccc"))    //false
    fmt.Println(strings.HasPrefix("Topgoer", ""))      //true
}

輸出結(jié)果
true
false
false
true

8)Golang HasSuffix()

HasSuffix函數(shù)檢查字符串s是否以指定的字符串結(jié)尾。如果字符串S以后綴字符串結(jié)尾,則返回true,否則返回false。

語法

func HasSuffix(s, prefix string) bool

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.HasSuffix("Topgoer", "goer"))   //true
    fmt.Println(strings.HasSuffix("Topgoer", "R"))      //false
    fmt.Println(strings.HasSuffix("Topgoer", "GOER"))   //false
    fmt.Println(strings.HasSuffix("123456", "456"))   //true
    fmt.Println(strings.HasSuffix("Topgoer", ""))     //true
}

輸出結(jié)果
true
false
false
true
true

9)Golang Index()

Index功能可以搜索字符串中的特定文本。它僅通過匹配字符串中的特定文本即可工作。如果找到,則返回以0開頭的特定位置。如果找不到,則返回-1。

語法

func Index(s, sep string) int

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Index("Topgoer", "goer"))   //true
    fmt.Println(strings.Index("Topgoer", "R"))      //false
    fmt.Println(strings.Index("Topgoer", "GOER"))   //false
    fmt.Println(strings.Index("123-456", "-"))   //true
    fmt.Println(strings.Index("Topgoer", ""))     //true
}

輸出結(jié)果
3
-1
-1
3
0

10)Golang IndexAny()

IndexAny函數(shù)從string [left]中的chars [right]返回任何Unicode代碼點(diǎn)的第一個實(shí)例的索引。它僅通過匹配字符串中的特定文本即可工作。如果找到,則返回以0開頭的特定位置。如果找不到,則返回-1。

語法:

func IndexAny(s,chars string)int

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.IndexAny("topgoer", "www"))
    fmt.Println(strings.IndexAny("topgoer", "ggg"))
    fmt.Println(strings.IndexAny("mobile", "one"))
    fmt.Println(strings.IndexAny("123456789", "4")) 
    fmt.Println(strings.IndexAny("123456789", "0"))
}

輸出結(jié)果
-1
3
1
3
-1

11)Golang IndexByte()

IndexByte函數(shù)返回字符串中第一個字符實(shí)例的索引。如果找到,則返回以0開頭的特定位置。如果找不到,則返回-1。

語法:

func IndexByte(s string, c byte) int

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    var s,t,u byte
    t = 't'
    fmt.Println(strings.IndexByte("Topgoer",t))
    fmt.Println(strings.IndexByte("topgoer",t))
    fmt.Println(strings.IndexByte("ogoer",t))
    s = 1
    fmt.Println(strings.IndexByte("5221-topgoer",s))
    u = '1'
    fmt.Println(strings.IndexByte("5221-topgoer",u))
}

輸出結(jié)果
-1
0
-1
-1
3

12)Golang IndexRune()

IndexRune函數(shù)以字符串形式返回Unicode代碼點(diǎn)r的第一個實(shí)例的索引。如果找到,則返回以0開頭的特定位置。如果找不到,則返回-1。在下面的示例中,s,t和u變量類型聲明為符文。

語法:

func IndexRune(s string, r rune) int

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    var s,t,u rune
    t = 'T'
    fmt.Println(strings.IndexRune("Topgoer",t))
    fmt.Println(strings.IndexRune("topgoer",t))
    fmt.Println(strings.IndexRune("opgoer",t))
    s = 1
    fmt.Println(strings.IndexRune("5221-JAPAN",s))
    u = '1'
    fmt.Println(strings.IndexRune("5221-JAPAN",u))
}

輸出結(jié)果
0
-1
-1
-1
3

13)Golang Join()[concatenate]

Join()函數(shù)從切片的元素返回字符串。Join將字符串Slice的元素連接起來以創(chuàng)建單個字符串。分隔符字符串sep指定在結(jié)果字符串中的切片元素之間放置的內(nèi)容。

語法

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

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    // Slice of strings
    textString := []string{"wen", "topgoer", "com"}
    fmt.Println(strings.Join(textString, "-"))

    // Slice of strings
    textNum := []string{"1", "2", "3", "4", "5"}
    fmt.Println(strings.Join(textNum,""))
}

輸出結(jié)果
wen-topgoer-com
12345

14)Golang LastIndex() [區(qū)分大小寫]

LastIndex函數(shù)可在字符串中搜索特定的特定文本/字符/字符串。它返回字符串中最后一個實(shí)例text / character / strin的索引。如果找到,則返回以0開頭的特定位置。如果找不到,則返回-1。

語法

func LastIndex(s, sep string) int

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.LastIndex("topgoer", "o")) // position j=0,a=1,p=2,a=3
    fmt.Println(strings.LastIndex("topgoer", "G"))
    fmt.Println(strings.LastIndex("Topgoer", "go"))
    fmt.Println(strings.LastIndex("TOPGOER TOPGOER", "go"))
    fmt.Println(strings.LastIndex("1234567890 1234567890", "0"))
    fmt.Println(strings.LastIndex("1234567890 1234567890", "00"))
    fmt.Println(strings.LastIndex("1234567890 1234567890", "123"))
}

輸出結(jié)果
4
-1
3
-1
20
-1
11

15)Golang Repeat()

Repeat函數(shù)將字符串重復(fù)指定的次數(shù),并返回一個新字符串,該字符串由字符串s的計數(shù)副本組成。Count指定將重復(fù)字符串的次數(shù)。必須大于或等于0。

語法

func Repeat(s string, count int) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    textString := "China"
    repString := strings.Repeat(textString, 5)
    fmt.Println(repString)

    textString = " A " // char with space on both side
    repString = strings.Repeat(textString,5)
    fmt.Println(repString)        // Repeat space also

    fmt.Println("ba" + strings.Repeat("na", 2))
    fmt.Println("111" + strings.Repeat("22", 2))
    fmt.Println("111" + strings.Repeat(" ",2))
}

輸出結(jié)果
ChinaChinaChinaChinaChina
?A? A? A? A? A
banana
1112222
111

16)Golang Replace() [區(qū)分大小寫]

替換功能用字符串中的某些其他字符替換某些字符。n指定要在字符串中替換的字符數(shù)。如果n小于0,則替換次數(shù)沒有限制。

語法

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

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {

    fmt.Println(strings.Replace("Australia Japan Canada Indiana", "an", "anese", 0))
    fmt.Println(strings.Replace("Australia Japan Canada Indiana", "an", "anese", 1))
    fmt.Println(strings.Replace("Australia Japan Canada Indiana", "an", "anese", 2))
    fmt.Println(strings.Replace("Australia Japan Canada Indiana", "an", "anese", -1))
    fmt.Println(strings.Replace("1234534232132", "1", "0", -1))
    // case-sensitive
    fmt.Println(strings.Replace("Australia Japan Canada Indiana", "AN", "anese", -1))
}

輸出結(jié)果
Australia Japan Canada Indiana
Australia Japanese Canada Indiana
Australia Japanese Caneseada Indiana
Australia Japanese Caneseada Indianesea

17) Golang Split() [區(qū)分大小寫]

拆分功能將字符串拆分為一個切片。將s字符串拆分為用sep分隔的所有子字符串,并返回這些分隔符之間的子字符串的一部分。

語法

func Split(S string, sep string) []string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    strSlice := strings.Split("a,b,c", ",")
    fmt.Println(strSlice,"\n")

    strSlice = strings.Split("I love my country", " ")
    for _, v := range strSlice {
        fmt.Println(v)
    }

    strSlice = strings.Split("abacadaeaf","a")
    fmt.Println("\n",strSlice)

    strSlice = strings.Split("abacadaeaf","A")
    fmt.Println("\n",strSlice)

    strSlice = strings.Split("123023403450456056706780789","0")
    fmt.Println("\n",strSlice)

    strSlice = strings.Split("123023403450456056706780789",",")
    fmt.Println("\n",strSlice)
}

輸出結(jié)果
[a b c]

I
love
my
country

?[ b c d e f]

?[abacadaeaf]

?[123 234 345 456 567 678 789]

?[123023403450456056706780789]

18)Golang SplitN() [區(qū)分大小寫]

SplitN函數(shù)將字符串分成片。SplitN將s字符串拆分為所有由sep分隔的子字符串,并返回這些分隔符之間的子字符串的一部分。n確定要返回的子字符串?dāng)?shù)。

  • n小于0:最多n個子字符串;最后一個子字符串將是未拆分的余數(shù)。
  • n等于0:結(jié)果為nil(零子字符串)
  • n大于0:所有子字符串

語法

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

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    strSlice := strings.SplitN("a,b,c", ",",0)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitN("a,b,c", ",",1)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitN("a,b,c", ",",2)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitN("a,b,c", ",",3)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitN("I love my country", " ",-1)
    for _, v := range strSlice {
        fmt.Println(v)
    }
    strSlice = strings.SplitN("123023403450456056706780789","0",5)
    fmt.Println("\n",strSlice)
}

輸出結(jié)果
[]

[a,b,c]

[a b,c]

[a b c]

I
love
my
country

?[123 234 345 456 56706780789]

19)Golang SplitAfter() [區(qū)分大小寫]

SplitAfter函數(shù)將字符串分成片。在Sep的每個實(shí)例之后,SplitAfter將S切片為所有子字符串,并返回這些子字符串的切片。

語法

func SplitAfter(S String, sep string) []string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    strSlice := strings.SplitAfter("a,b,c", ",")
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitAfter("I love my country", " ")
    for _, v := range strSlice {
        fmt.Println(v)
    }

    strSlice = strings.SplitAfter("abacadaeaf","a")
    fmt.Println("\n",strSlice)

    strSlice = strings.SplitAfter("abacadaeaf","A")
    fmt.Println("\n",strSlice)

    strSlice = strings.SplitAfter("123023403450456056706780789","0")
    fmt.Println("\n",strSlice)

    strSlice = strings.SplitAfter("123023403450456056706780789",",")
    fmt.Println("\n",strSlice)
}

輸出結(jié)果
[a, b, c]

I
love
my
country

?[a ba ca da ea f]

?[abacadaeaf]

?[1230 2340 3450 4560 5670 6780 789]

?[123023403450456056706780789]

20)Golang SplitAfterN()[區(qū)分大小寫]

SplitAfterN函數(shù)將字符串分成片。SplitAfterN在sep的每個實(shí)例之后將String切片為子字符串,并返回這些子字符串的切片。n確定要返回的子字符串?dāng)?shù)。

  • n小于0:最多n個子字符串;最后一個子字符串將是未拆分的余數(shù)。
  • n等于0:結(jié)果為nil(零子字符串)
  • n大于0:所有子字符串

語法

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

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    strSlice := strings.SplitAfterN("a,b,c", ",",0)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitAfterN("a,b,c", ",",1)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitAfterN("a,b,c", ",",2)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitAfterN("a,b,c", ",",3)
    fmt.Println(strSlice,"\n")

    strSlice = strings.SplitAfterN("I love my country", " ",-1)
    for _, v := range strSlice {
        fmt.Println(v)
    }
    strSlice = strings.SplitAfterN("123023403450456056706780789","0",5)
    fmt.Println("\n",strSlice)
}

輸出結(jié)果
[]

[a,b,c]

[a, b,c]

[a, b, c]

I
love
my
country

?[1230 2340 3450 4560 56706780789]

21)Golang Title()

Title函數(shù)將每個單詞的第一個字符轉(zhuǎn)換為大寫。

語法

func Title(s string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Title("i like golang"))
    fmt.Println(strings.Title("i love my country"))
    fmt.Println(strings.Title("topgoer com"))
}

輸出結(jié)果
I Like Golang
I Love My Country
Topgoer Com

22)Golang ToTitle()

ToTitle函數(shù)將每個單詞的所有字符轉(zhuǎn)換為大寫。

語法

func ToTitle(s string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.ToTitle("i like golang"))
    fmt.Println(strings.ToTitle("i love my country"))
    fmt.Println(strings.ToTitle("topgoer com"))
}

輸出結(jié)果
I LIKE GOLANG
I LOVE MY COUNTRY
TOPGOER COM

23)Golang ToLower()

ToTitle函數(shù)將每個單詞的所有字符轉(zhuǎn)換為小寫。

語法

func ToLower(s string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.ToLower("I Like Golang"))
    fmt.Println(strings.ToLower("I Love My Country"))
    fmt.Println(strings.ToLower("topgoer Com"))
}

輸出結(jié)果
i like golang
i love my country
topgoer com

24)Golang ToUpper()

ToUpper函數(shù)將每個單詞的所有字符轉(zhuǎn)換為大寫。

語法

func ToUpper(s string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.ToUpper("I Like Golang"))
    fmt.Println(strings.ToUpper("I Love My Country"))
    fmt.Println(strings.ToUpper("topgoer Com"))
}

輸出結(jié)果
I LIKE GOLANG
I LOVE MY COUNTRY
TOPGOER COM

25)Golang Trim() [區(qū)分大小寫]

Trim函數(shù)從字符串的兩邊刪除預(yù)定義的字符cutset。

語法

func Trim(s string, cutset string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Trim("0120 2510", "0"))
    fmt.Println(strings.Trim("abcd axyz", "a"))
    fmt.Println(strings.Trim("abcd axyz", "A"))
    fmt.Println(strings.Trim("! Abcd dcbA !", "A"))
    fmt.Println(strings.Trim("! Abcd dcbA !", "!"))
    fmt.Println(strings.Trim(" Abcd dcbA ", " "))
}

輸出結(jié)果
120 251
bcd axyz
abcd axyz
! Abcd dcbA !
?Abcd dcbA
Abcd dcbA

26)Golang TrimLeft() [區(qū)分大小寫]

trimlefit函數(shù)只從字符串s的左側(cè)刪除預(yù)定義字符cutset。

語法

func TrimLeft(s string, cutset string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.TrimLeft("0120 2510", "0"))
    fmt.Println(strings.TrimLeft("abcd axyz", "a"))
    fmt.Println(strings.TrimLeft("abcd axyz", "A"))
    fmt.Println(strings.TrimLeft("! Abcd dcbA !", "A"))
    fmt.Println(strings.TrimLeft("! Abcd dcbA !", "!"))
    fmt.Println(strings.TrimLeft(" Abcd dcbA ", " "))
}

輸出結(jié)果
120 2510
bcd axyz
abcd axyz
! Abcd dcbA !
?Abcd dcbA !
Abcd dcbA

27)Golang TrimRight() [區(qū)分大小寫]

TrimRight函數(shù)僅從字符串s的右側(cè)刪除預(yù)定義字符cutset。

語法

func TrimRight(s string, cutset string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.TrimRight("0120 2510", "0"))
    fmt.Println(strings.TrimRight("abcd axyz", "a"))
    fmt.Println(strings.TrimRight("abcd axyz", "A"))
    fmt.Println(strings.TrimRight("! Abcd dcbA !", "A"))
    fmt.Println(strings.TrimRight("! Abcd dcbA !", "!"))
    fmt.Println(strings.TrimRight(" Abcd dcbA ", " "))
}

輸出結(jié)果
0120 251
abcd axyz
abcd axyz
! Abcd dcbA !
! Abcd dcbA
?Abcd dcbA

28)Golang TrimSpace()

TrimSpace函數(shù)從字符串的兩側(cè)刪除空白和其他預(yù)定義字符。

“\t”-選項(xiàng)卡

“\n”-新行

“\x0B”-垂直選項(xiàng)卡

“\r”-回車

“”-普通空白

語法

func TrimSpace(s string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.TrimSpace(" I love my country "))
    fmt.Println(strings.TrimSpace(" \t\n  I love my country \t\n "))
    fmt.Println(strings.TrimSpace(" \t\n\r\x0BI love my country\t\n "))
}

輸出結(jié)果
I love my country
I love my country
I love my country

29)Golang TrimPrefi() [區(qū)分大小寫]

TrimPrefix函數(shù)從S字符串的開頭刪除前綴字符串。如果S不以前綴開頭,則S將原封不動地返回。

語法

func TrimPrefix(S string, prefix string) string

DEMO

package main

import (
    "fmt"
    "strings"
)

func main() {
    var s string
    s = "I love my country"
    s = strings.TrimPrefix(s, "I")
    s = strings.TrimSpace(s)
    fmt.Println(s)

    s = "I love my country"
    s = strings.TrimPrefix(s, "i")
    fmt.Println(s)

    s = "\nI-love-my-country"
    s = strings.TrimPrefix(s, "\n")
    fmt.Println(s)

    s = "\tI-love-my-country"
    s = strings.TrimPrefix(s, "\t")
    fmt.Println(s)
}

輸出結(jié)果
love my country
I love my country
I-love-my-country
I-love-my-country

到此這篇關(guān)于Golang字符串常用函數(shù)的使用的文章就介紹到這了,更多相關(guān)Golang字符串函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Golang 限流器的使用和實(shí)現(xiàn)示例

    Golang 限流器的使用和實(shí)現(xiàn)示例

    這篇文章主要介紹了Golang 限流器的使用和實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 10個現(xiàn)代網(wǎng)站開發(fā)必備的Go軟件包工具盤點(diǎn)

    10個現(xiàn)代網(wǎng)站開發(fā)必備的Go軟件包工具盤點(diǎn)

    這篇文章主要為大家介紹了10個現(xiàn)代網(wǎng)站開發(fā)必備的Go軟件包,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • mac下安裝golang框架iris的方法

    mac下安裝golang框架iris的方法

    這篇文章主要介紹了mac下安裝golang框架iris的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Go 熱加載之fresh詳解

    Go 熱加載之fresh詳解

    這篇文章主要為大家介紹了Go 熱加載之fresh詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • go語言Timer計時器的用法示例詳解

    go語言Timer計時器的用法示例詳解

    Go語言的標(biāo)準(zhǔn)庫里提供兩種類型的計時器Timer和Ticker。這篇文章通過實(shí)例代碼給大家介紹go語言Timer計時器的用法,代碼簡單易懂,感興趣的朋友跟隨小編一起看看吧
    2020-05-05
  • Golang內(nèi)存管理之內(nèi)存分配器詳解

    Golang內(nèi)存管理之內(nèi)存分配器詳解

    Go內(nèi)存分配器的設(shè)計思想來源于TCMalloc,全稱是Thread-Caching?Malloc,核心思想是把內(nèi)存分為多級管理,下面就來和大家深入聊聊Go語言內(nèi)存分配器的使用吧
    2023-06-06
  • Go語言字符串拼接方式與性能比較分析

    Go語言字符串拼接方式與性能比較分析

    這篇文章主要為大家介紹了Go語言字符串拼接方式與性能比較示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • 深度剖析Golang如何實(shí)現(xiàn)GC掃描對象

    深度剖析Golang如何實(shí)現(xiàn)GC掃描對象

    這篇文章主要為大家詳細(xì)介紹了Golang是如何實(shí)現(xiàn)GC掃描對象的,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,需要的小伙伴可以參考一下
    2023-03-03
  • Go1.18新特性對泛型支持詳解

    Go1.18新特性對泛型支持詳解

    這篇文章主要為大家介紹了Go1.18新特性對泛型支持詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • golang監(jiān)聽文件變化的實(shí)例

    golang監(jiān)聽文件變化的實(shí)例

    這篇文章主要介紹了golang監(jiān)聽文件變化的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03

最新評論