1. 程式人生 > >go語言中字串常用操作

go語言中字串常用操作

導語

在工作中遇到了go語言,個人趕腳入門還是很快的,作為一個新手,這裡記錄自己遇到go語言中字串的用法。

基本知識簡介

  • 型別為string
  • 字串用 “” ,或者 ” 括起來定義
  • 字串不可變
    例如下面的例子會報錯:
    var s string = “hello”
    s[0] = ‘c’

修改字串

字串的修改可以通過轉換型別實現

s :=”hello”
c := []bytes(s) // 轉換型別
c[0] = ‘c’
s2: = string(c) //轉回字串

也可以通過切片處理實現

s := “hello”
s = ‘c’ +s[1:]

字串連線

可以使用+號直接連線

s := “hello”
m := “world”
a := s +m

也可以使用下面的方式連線

writeStr := fmt.Sprintf(“第%d條執行緒開始讀取”, i) // 根據格式說明符進行格式化並返回其結果字串。

字串常用操作

  • 字串中含有某個字元

    isContain := strings.Contains(pageitem, “.”) // 是否含有 .

  • 字串長度

    s := “hello”
    len (s)

  • 字串根據指定字元進行切割

    s := “hello”
    var strArr [] string
    strArr = strings.Split(s, “e”)

  • 字串擷取指定長度

    str := “hello”
    rs := []rune(str)
    str0 := string(rs[0:3])// 擷取下來的是hel

*字串的正則匹配

str := “1938848841333333234”
reg := regexp.MustCompile(\d{17}) // 匹配連續17位數字
result := reg.FindAllString(str, -1) //

字串與其他型別轉換


  • 字串轉為uint64
strconv.ParseUint(str, 16, 64) // 把16位的字串轉為uint 64
strconv.ParseInt(str, 16, 64) // 類似上面轉為int64
  • 把整型的十進位制i轉為字串
    str := strconv.FormatInt(i, 10)
  • 結語

    工作中目前接觸主要這些,後期遇到會補充。