參考鏈接: https://blog.csdn.net/wade3015/article/details/83715492
廢話少說直接上代碼
函數:Contain(s,str string) bool
說明:查找子串是否在指定的字符串中
實例:
package main import ( "fmt" "strings" ) func main() { fmt.Println(strings.Contains("TigerwolfC", "wolf")) //true fmt.Println(strings.Contains("TigerwolfC", "bar")) //false fmt.Println(strings.Contains("TigerwolfC", "")) //true fmt.Println(strings.Contains("", "")) //true 這里要特別注意 fmt.Println(strings.Contains("我是中國人", "我")) //true }
函數: ContainsAny(s, chars string) bool
說明: 判斷字符串 s 中是否包含 chars 中的任何一個字符,如果有返回 true,否則返回false
實例:
str := "Hello World" fmt.Println(strings.ContainsAny(str, "W")) // true fmt.Println(strings.ContainsAny("foo", "")) // false fmt.Println(strings.ContainsAny(str, "def")) // true fmt.Println(strings.ContainsAny("", "")) // false
函數: Count(s, sep string) int
說明: 判斷字符 sep 在字符串 s 總共出現的次數,如果不存在返回0
實例:
str := "Hello World" fmt.Println(strings.Count(str, "e")) //程序輸出 1 str1 := "Hello Weed" fmt.Println(strings.Count(str1, "e")) //程序輸出 3 str2 := "Hello World" fmt.Println(strings.Count(str2, "p")) //程序輸出 0
函數: EqualFold(s, t string) bool
說明: 判斷字符串 s 是否與字符串 t 相等,並且不區分大小寫
實例:
str := "Hello World" fmt.Println(strings.EqualFold(str, "hello world")) //程序輸出 true
函數: Fields(s string) []string
說明: 將字符串 s 以空格為分隔符拆分成若干個字符串,若成功則返回分割后的字符串切片
實例:
str := "Hello World" for _, v := range strings.Fields(str) { fmt.Println(v) } //程序輸出 “Hello” 和 "World"
函數: HasPrefix(s, prefix string) bool
說明: 判斷字符串 s 是否是以字符 prefix 開頭,如果是返回 true 否則返回 false
實例:
str := "Hello World" fmt.Println(strings.HasPrefix(str, "He")) //程序輸出 true
函數: HasSuffix(s, suffix string) bool
說明: 判斷字符串 s 是否是以字符 suffix 結束,如果是返回 true 否則返回 false
實例:
str := "Hello World" fmt.Println(strings.HasSuffix("str ", "orld")) //程序輸出 true
函數: Index(s, sep string) int
說明: 判斷字符 sep 在字符串 s 中第一次出現的位置,如果成功則返回sep位置的索引,如果字符 sep 不在字符串 s 中則返回 -1
實例:
str := "Hello World" fmt.Println(strings.Index(str, "e")) //程序輸出 1 fmt.Println(strings.Index(str, "c")) //程序輸出 -1
函數: func LastIndex(s, sep string) int
說明:返回子串 sep 在字符串 s 中最后一次出現的位置,如果找不到,則返回 -1,如果 sep 為空,則返回字符串的長度
實例:
str := "Hello World" fmt.Println(strings.LastIndex(str, "h")) //程序輸出 -1 fmt.Println(strings.LastIndex(str, "o")) //程序輸出 7 fmt.Println(strings.LastIndex(str, "")) //程序輸出 11
函數:func IndexAny(s, chars string) int
說明:返回字符串 chars 中的任何一個字符在字符串 s 中第一次出現的位置, 如果找不到,則返回 -1,如果 chars 為空,則返回 -1
實例:
str := "Hello World" fmt.Println(strings.IndexAny(str, "abc")) //程序輸出 -1 fmt.Println(strings.IndexAny(str, "dof")) //程序輸出 4 fmt.Println(strings.IndexAny(str, "")) //程序輸出 -1
函數:func Join(a []string, sep string) string
說明:Join 將 a 中的子串連接成一個單獨的字符串,子串之間用 sep 分隔
實例:
s := []string{"foo", "baa", "bae"} fmt.Println(strings.Join(s, ", ")) // 返回字符串:foo, baa, bae
函數:func Repeat(s string, count int) string
說明:將 count 個字符串 s 連接成一個新的字符串
實例:
s := "Good!" fmt.Println(strings.Repeat(s, 3)) // "Good!Good!Good!"
函數:func ToUpper(s string) string
說明:將 s 中的所有字符修改為其大寫格式,對於非 ASCII 字符,它的大寫格式需要查表轉換
// ToLower
函數:func ToLower(s string) string
說明:將 s 中的所有字符修改為其小寫格式,對於非 ASCII 字符,它的小寫格式需要查表轉換
函數:func ToTitle(s string) string
說明:ToTitle 將 s 中的所有字符修改為其 Title 格式,大部分字符的 Title 格式就是其 Upper 格式,只有少數字符的 Title 格式是特殊字符, 這里的 ToTitle 主要給 Title 函數調用
s := "heLLo worLd Abc" fmt.Println(us := strings.ToUpper(s)) // "HELLO WORLD ABC" fmt.Println(strings.ToLower(s)) // "hello world abc" fmt.Println(strings.ToTitle(s)) // "HELLO WORLD ABC"
函數:func Trim(s string, cutset string) string
說明:將刪除 s 首尾連續的包含在 cutset 中的字符
函數:func TrimLeft(s string, cutset string) string
說明:TrimLeft 將刪除 s 頭部連續的包含在 cutset 中的字符
函數:func TrimRight(s string, cutset string) string
說明:TrimRight 將刪除 s 尾部連續的包含在 cutset 中的字符
實例:
s := " Hello 世界! " ts := strings.Trim(s, " Helo!") fmt.Printf("%q\n", ts) // "世界" fmt.Printf("[%q]", strings.Trim(" !!! Achtung !!! ", "! ")) // ["Achtung"] tr := strings.TrimLeft(s, " Helo") fmt.Printf("%q\n", tr) // "世界! " tx := strings.TrimRight(s, " 世界!") fmt.Printf("%q\n", tx) // " Hello"
// TrimPrefix 刪除 s 頭部的 prefix 字符串
// 如果 s 不是以 prefix 開頭,則返回原始 s
函數:func TrimPrefix(s, prefix string) string
說明:TrimPrefix 刪除 s 頭部的 prefix 字符串,如果 s 不是以 prefix 開頭,則返回原始 s
實例:
s := "@Hello@世界!" ts := strings.TrimPrefix(s, "@") fmt.Printf("%q\n", ts) // " Hello@世界!" tx:= strings.TrimPrefix(s, "$") fmt.Printf("%q\n", tx) // " @Hello@世界!"
函數:func TrimSuffix(s, suffix string) string
說明:TrimSuffix 刪除 s 尾部的 suffix 字符串,如果 s 不是以 suffix 結尾,則返回原始 s
實例:
s := "Hello 世界!!!!!" ts := strings.TrimSuffix(s, "!!!!") fmt.Printf("%q\n", ts) // "Hello 世界!"
函數:func Replace(s, old, new string, n int) string
說明:Replace 返回 s 的副本,並將副本中的 old 字符串替換為 new 字符串替換次數為 n 次,如果 n 為 -1,則全部替換,如果 old 為空,則在副本的每個字符之間都插入一個 new
實例:
fmt.Println(strings.Replace("ABAACEDF", "A", "a", 2)) // aBaACEDF fmt.Println(strings.Replace("ABAACEDF", "A", "a", -1)) // aBaaCEDF
golang中字符串和各種int類型之間的相互轉換方式
string轉成int:
int, err := strconv.Atoi(string)
string轉成int64:
int64, err := strconv.ParseInt(string, 10, 64)
int轉成string:
string := strconv.Itoa(int)
int64轉成string:
string := strconv.FormatInt(int64,10)