Golang學(xué)習(xí)筆記---字符串處理大全

Golang學(xué)習(xí)筆記---字符串處理大全

源碼Github鏈接simpleStrProcess.go

package main

import (
    "fmt"
    "strconv"
    "strings"
)

func main()  {
    /* 字符串基本操作--strings */
    str := "sojaGolang"

    // 是否包含 : true false
    fmt.Println(strings.Contains(str, "soja"), strings.Contains(str, "nana"))

    // 字符串長(zhǎng)度 : 10
    fmt.Println(len(str))

    // 字符在字符串中的位置,從0開(kāi)始,不存在返回-1 : 4 -1
    fmt.Println(strings.Index(str, "G"), strings.Index(str, "i"))

    // 判斷字符串是否以 xx 開(kāi)頭 : true false
    fmt.Println(strings.HasPrefix(str, "soja"), strings.HasPrefix(str, "Golang"))

    // 判斷字符串是否以 xx 結(jié)尾 : false true
    fmt.Println(strings.HasSuffix(str, "soja"), strings.HasSuffix(str, "Golang"))

    // 判斷2個(gè)字符串大小,相等0,左邊大于右邊-1,其他1 : 0 1 -1
    str2 := "nanana"
    fmt.Println(strings.Compare(str, str),strings.Compare(str, str2),strings.Compare(str2, str))

    // 分割字符串 : 返回?cái)?shù)組 [a b c d e f g f]
    str3 := "a,b,c,d,e,f,g,f"
    fmt.Println(strings.Split(str3, ","))

    // 拼接字符串 : a-b-c-d-e-f
    str4 := []string{"a", "b", "c", "d", "e", "f"}
    fmt.Println(strings.Join(str4, "-"))

    // 去除字符串兩端空格 : 13 5 world
    str5 := "    world    "
    str6 := strings.Trim(str5, " ")
    fmt.Println(len(str5), len(str6), str6)

    // 大小寫(xiě)轉(zhuǎn)換 : iphone IPHONE
    str7 := "iPhone"
    fmt.Println(strings.ToLower(str7), strings.ToUpper(str7))

    // 字符串替換 : iphone iPhone
    str8 := "iphone"
    str9 := strings.Replace(str8, "ip", "iP", 2)
    fmt.Println(str8, str9)

    /* 字符串類型轉(zhuǎn)換 strconv */
    // 整型 轉(zhuǎn) 字符串

    int1 := 12
    str10 := strconv.Itoa(int1)
    fmt.Println(str10)

    // 字符串 轉(zhuǎn) 整型
    int2, err := strconv.Atoi(str10)
    if err == nil {
        fmt.Println(int2)
    } else {
        fmt.Println(err)
    }

    // bool 轉(zhuǎn) 字符串
    bool1 := true
    str11 := strconv.FormatBool(bool1)
    fmt.Println(str11)

    // 字符串 轉(zhuǎn) bool
    bool2, err := strconv.ParseBool(str11)
    if err == nil {
        fmt.Println(bool2)
    } else {
        fmt.Println(err)
    }

    // FormatFloat 將浮點(diǎn)數(shù) f 轉(zhuǎn)換為字符串值
    // f:要轉(zhuǎn)換的浮點(diǎn)數(shù)
    // fmt:格式標(biāo)記(b、e、E、f、g、G)
    // prec:精度(數(shù)字部分的長(zhǎng)度,不包括指數(shù)部分)
    // bitSize:指定浮點(diǎn)類型(32:float32、64:float64)
    //
    // 格式標(biāo)記:
    // 'b' (-ddddp±ddd,二進(jìn)制指數(shù))
    // 'e' (-d.dddde±dd,十進(jìn)制指數(shù))
    // 'E' (-d.ddddE±dd,十進(jìn)制指數(shù))
    // 'f' (-ddd.dddd,沒(méi)有指數(shù))
    // 'g' ('e':大指數(shù),'f':其它情況)
    // 'G' ('E':大指數(shù),'f':其它情況)
    //
    // 如果格式標(biāo)記為 'e','E'和'f',則 prec 表示小數(shù)點(diǎn)后的數(shù)字位數(shù)
    // 如果格式標(biāo)記為 'g','G',則 prec 表示總的數(shù)字位數(shù)(整數(shù)部分+小數(shù)部分)
    float1 := 3.14159265
    str12 := strconv.FormatFloat(float1, 'f',5,64)
    fmt.Println(str12)


}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容