golang中strings包用法

2021-09-28 22:48:43 字數 4383 閱讀 3894

1.strings.split

/ split 以 sep 為分隔符,將 s 切分成多個子切片,結果中不包含 sep 本身

// 如果 sep 為空,則將 s 切分成 unicode 字元列表。

// 如果 s 中沒有 sep 子串,則將整個 s 作為 string 的第乙個元素返回

func split

(s, sep string)

string

func main()

2.strings.splitafter

// splitafter 以 sep 為分隔符,將 s 切分成多個子切片,結果中包含 sep 本身

// 如果 sep 為空,則將 s 切分成 unicode 字元列表。

// 如果 s 中沒有 sep 子串,則將整個 s 作為 string 的第乙個元素返回

func splitafter

(s, sep string)

string

func main()

3. strings.join

// join 將 a 中的子串連線成乙個單獨的字串,子串之間用 sep 分隔

func join

(a [

]string, sep string) string

func main()

s := strings.

join

(ss,

"|")

fmt.

println

(s)}

4.trings.repeat

// repeat 將 count 個字串 s 連線成乙個新的字串

func repeat

(s string, count int

) string

func main()

// toupper 將 s 中的所有字元修改為其大寫格式

// 對於非 ascii 字元,它的大寫格式需要查表轉換

func toupper(s string) string

// tolower 將 s 中的所有字元修改為其小寫格式

// 對於非 ascii 字元,它的小寫格式需要查表轉換

func tolower(s string) string

// totitle 將 s 中的所有字元修改為其 title 格式

// 大部分字元的 title 格式就是其 upper 格式

// 只有少數字元的 title 格式是特殊字元

// 這裡的 totitle 主要給 title 函式呼叫

func totitle

(s string) string

func main()

// 獲取非 ascii 字元的 title 格式列表

func main()

}}}

// toupperspecial 將 s 中的所有字元修改為其大寫格式。

// 優先使用 _case 中的規則進行轉換

func toupperspecial(_case unicode.specialcase, s string) string

// tolowerspecial 將 s 中的所有字元修改為其小寫格式。

// 優先使用 _case 中的規則進行轉換

func tolowerspecial(_case unicode.specialcase, s string) string

// totitlespecial 將 s 中的所有字元修改為其 title 格式。

// 優先使用 _case 中的規則進行轉換

func totitlespecial(_case unicode.specialcase, s string) string

_case 規則說明,以下列語句為例:

unicode.caserange}

·其中 『a』, 『z』 表示此規則只影響 『a』 到 『z』 之間的字元。

·其中 [unicode.maxcase]rune 陣列表示:

當使用 toupperspecial 轉換時,將字元的 unicode 編碼與第乙個元素值(3)相加

當使用 tolowerspecial 轉換時,將字元的 unicode 編碼與第二個元素值(-3)相加

當使用 totitlespecial 轉換時,將字元的 unicode 編碼與第三個元素值(0)相加

func main()

},// 將半形句號替換為全形句號,totitle 不處理

unicode.caserange},

// 將 abc 分別替換為全形的 abc、abc,totitle 不處理

unicode.caserange},

} s :

="abcdef,abcdef."

us :

= strings.

toupperspecial

(_mycase, s)

fmt.

printf

("%q\n"

, us)

// "abcdef,abcdef。"

ls :

= strings.

tolowerspecial

(_mycase, s)

fmt.

printf

("%q\n"

, ls)

// "abcdef,abcdef。"

ts :

= strings.

totitlespecial

(_mycase, s)

fmt.

printf

("%q\n"

, ts)

// "abcdef,abcdef."

}

// trim 將刪除 s 首尾連續的包含在 cutset 中的字元

func trim

(s string, cutset string) string

func main()

// trimleft 將刪除 s 頭部連續的包含在 cutset 中的字元

func trimleft

(s string, cutset string) string

func main()

// trimright 將刪除 s 尾部連續的包含在 cutset 中的字元

func trimright

(s string, cutset string) string

func main()

// trimspace 將刪除 s 首尾連續的的空白字元

func trimspace

(s string) string

func main()

// trimprefix 刪除 s 頭部的 prefix 字串

// 如果 s 不是以 prefix 開頭,則返回原始 s

func trimprefix

(s, prefix string) string

func main()

// trimsuffix 刪除 s 尾部的 suffix 字串

// 如果 s 不是以 suffix 結尾,則返回原始 s

func trimsuffix

(s, suffix string) string

func main()

注:trimsuffix只是去掉s字串結尾的suffix字串,只是去掉1次,而trimright是一直去掉s字串右邊的字串,只要有響應的字串就去掉,是乙個多次的過程,這也是二者的本質區別.

14.// replace 返回 s 的副本,並將副本中的 old 字串替換為 new 字串

// 替換次數為 n 次,如果 n 為 -1,則全部替換

// 如果 old 為空,則在副本的每個字元之間都插入乙個 new

func replace

(s, old,

new string, n int

) string

func main()

詳細請參考:

go語言strings包中的方法說明

go語言中的strings包主要是對字串的操作,中定義了一系列對字串的操作 strings包中的方法使用 contains函式 查詢子字串中是否在指定的字串 fmt.println 1 contains使用例子 fmt.println strings.contains hello world he ...

golang中os exec包用法

exec包執行外部命令,它將os.startprocess進行包裝使得它更容易對映到stdin和stdout,並且利用pipe連線i o func lookpath file string string,error lookpath在環境變數中查詢科執行二進位制檔案,如果file中包含乙個斜槓,則直...

golang中os exec包用法

exec包執行外部命令,它將os.startprocess進行包裝使得它更容易對映到stdin和stdout,並且利用pipe連線i o func lookpath file string string,error lookpath在環境變數中查詢科執行二進位制檔案,如果file中包含乙個斜槓,則直...