Go 語言中的字串處理與正規表示式
Go 語言是一門強型別的語言,其中字串是常用的資料型別。在程式開發過程中,字串處理是十分重要的一環。本文將介紹 Go 語言中字串處理的基本運算和正規表示式的使用。
一、字串處理
Go 語言的字串型別是不可改變的位元組序列,也就是一旦創建,就不能修改其值。字串可以使用雙引號或反引號來表示。雙引號字串中可以使用轉義序列,如
表示換行符號。反引號字串可以包含任意字符,包括多行文字和轉義字符。
Go 語言中可以使用運算子來連接兩個字串,例如:
str1 := "Hello" str2 := "world" str3 := str1 + " " + str2 fmt.Println(str3) // output: Hello world
可以使用strings 套件中的Split() 函數來分割字串。例如:
str := "Hello world" arr := strings.Split(str, " ") fmt.Println(arr) // output: [Hello world]
可以使用 strings 套件中的 Replace() 函數來取代字串。例如:
str := "Hello world" newStr := strings.Replace(str, "world", "Go", 1) fmt.Println(newStr) // output: Hello Go
可以使用 strings 套件中的 Index() 或 Contains() 函數來尋找字串。例如:
str := "Hello world" index := strings.Index(str, "world") fmt.Println(index) // output: 6 isContains := strings.Contains(str, "Hello") fmt.Println(isContains) // output: true
可以使用 strings 套件中的 ToUpper() 和 ToLower() 函數來轉換字串的大小寫。例如:
str := "Hello WORLD" newStr1 := strings.ToUpper(str) newStr2 := strings.ToLower(str) fmt.Println(newStr1) // output: HELLO WORLD fmt.Println(newStr2) // output: hello world
二、正規表示式
正規表示式是用來描述字串的工具,可以判斷字串是否符合某種模式。 Go 語言內建了 regexp 包,可以使用正規表示式來匹配和操作字串。
package main import ( "fmt" "regexp" ) func main() { str1 := "abc123" str2 := "Hello world" pattern1 := `d+` pattern2 := `wo..d` isMatch1, _ := regexp.MatchString(pattern1, str1) isMatch2, _ := regexp.MatchString(pattern2, str2) fmt.Println(isMatch1) // output: true fmt.Println(isMatch2) // output: true re := regexp.MustCompile(pattern1) match1 := re.FindString(str1) fmt.Println(match1) // output: 123 matchAll1 := re.FindAllString(str1, -1) fmt.Println(matchAll1) // output: [123] repl := re.ReplaceAllString(str1, "456") fmt.Println(repl) // output: abc456 re2 := regexp.MustCompile(pattern2) match2 := re2.FindString(str2) fmt.Println(match2) // output: world }
以上是Go 語言中的字串處理與正規表示式的詳細內容。更多資訊請關注PHP中文網其他相關文章!