go的字符操作strings和strconv


在任何語言中字符串操作都是非常頻繁的,那么go中主要用strings和strconv, 他們的主要api有哪些了

strings

strings.HasPrefix(s string, prefix string) bool:判斷字符串s是否以prefix開頭 。
strings.HasSuffix(s string, suffix string) bool:判斷字符串s是否以suffix結尾。
strings.Index(s string, str string) int:判斷str在s中首次出現的位置,如果沒有出現,則返回-1
strings.LastIndex(s string, str string) int:判斷str在s中最后出現的位置,如果沒有出現,則返回-1
strings.Replace(str string, old string, new string, n int):字符串替換 如果n為負數,則替換所有的滿足條件的子串。
strings.Count(str string, substr string)int:字符串計數
strings.Repeat(str string, count int)string:重復count次str
strings.ToLower(str string)string:轉為小寫
strings.ToUpper(str string)string:轉為大寫
strings.TrimSpace(str string):去掉字符串首尾空白字符
strings.Trim(str string, cut string):去掉字符串首尾cut字符
strings.TrimLeft(str string, cut string):去掉字符串首cut字符
strings.TrimRight(str string, cut string):去掉字符串首cut字符
strings.Field(str string):返回str空格分隔的所有子串的slice
strings.FieldsFunc(s string, f func(rune) bool) []string 根據傳入的函數分割字符串,如果當前參數c不是數字或者字母,返回true作為分割符號
strings.Split(str string, split string):返回str split分隔的所有子串的  slice
strings.Join(s1 []string, sep string):用sep把s1中的所有元素鏈接起來
strings.Itoa(i int):把一個整數i轉成字符串
strings.Atoi(str string)(int, error):把一個字符串轉成整數   
strings.Contains(s, substr string) bool 字符串s中是否包含substr,返回true或者false。
strings.ContainsAny(s, chars string) bool 用於判斷子串中是否具有一個字符在源串s中。子串為空,返回false。
strings.ContainsRune(s string, r rune) bool 用於判斷Ascall碼代表的字符是否在源串s中。
strings.EqualFold(s, t string) bool 在不區分大小寫的情況下,判斷兩個字符串是否相同
strings.Map(mapping func(rune) rune, s string) string 對字符串s中每一個字符執行map函數中的操作。

strconv

strconv包提供了字符串與簡單數據類型之間的類型轉換功能。可以將簡單類型轉換為字符串,也可以將字符串轉換為其它簡單類型。
這個包里提供了很多函數,大概分為幾類:
字符串轉int:Atoi()
int轉字符串: Itoa()
ParseTP類函數將string轉換為TP類型:ParseBool()、ParseFloat()、ParseInt()、ParseUint()。因為string轉其它類型可能會失敗,所以這些函數都有第二個返回值表示是否轉換成功
FormatTP類函數將其它類型轉string:FormatBool()、FormatFloat()、FormatInt()、FormatUint()
AppendTP類函數用於將TP轉換成字符串后append到一個slice中:AppendBool()、AppendFloat()、AppendInt()、AppendUint()

fmt.Sprintf(格式化輸出)

下表中標出了常用的一些格式化樣式中的動詞及功能。

表:字符串格式化時常用動詞及功能
動  詞 功  能
%v 按值的本來值輸出
%+v 在 %v 基礎上,對結構體字段名和值進行展開
%#v 輸出 Go 語言語法格式的值
%T 輸出 Go 語言語法格式的類型和值
%% 輸出 % 本體
%b 整型以二進制方式顯示
%o 整型以八進制方式顯示
%d 整型以十進制方式顯示
%x 整型以十六進制方式顯示
%X 整型以十六進制、字母大寫方式顯示
%U Unicode 字符
%f 浮點數
%p 指針,十六進制方式顯示

如:

使用'%+v' &{Name:rat HP:150}
使用'%#v' &struct { Name string; HP int }{Name:"rat", HP:150}
使用'%T' *struct { Name string; HP int }C語言中, 使用%d代表整型參數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM