檢查給定字元是否在Go語言字串中


在處理字串時,檢查字串中是否存在特定字元或字元組是一個常見的操作。本文將介紹幾種確定特定字元是否在Go語言字串中存在的方法。

使用strings.Contains()函式

使用內建的strings.Contains()函式是確定字元或子字串是否包含在Go語言字串中最簡單的方法。此函式需要兩個引數:要搜尋的字串和要查詢的子字串,並返回一個布林值,指示子字串是否在字串中找到。這是一個程式碼示例:

示例

package main

import (
   "fmt"
   "strings"
)

func main() {
   str := "hello world"
   fmt.Println(strings.Contains(str, "o")) // true
   fmt.Println(strings.Contains(str, "z")) // false
}

輸出

true
false

在這個例子中,我們使用strings.Contains()方法來檢查字串“hello world”中是否存在字元“o”。由於字元“o”存在於字串中,因此該方法返回true。我們還檢查字元“z”,由於它不存在於字串中,所以返回false。

使用strings.Index()函式

另一種檢查Go語言字串中是否存在字元或子字串的方法是使用strings.Index()函式。此函式返回子字串在字串中第一次出現的索引,如果未找到子字串則返回-1。這是一個程式碼示例:

示例

package main

import (
   "fmt"
   "strings"
)

func main() {
   str := "hello world"
   fmt.Println(strings.Index(str, "o")) // 4
   fmt.Println(strings.Index(str, "z")) // -1
}

輸出

4
-1

在這個例子中,我們使用strings.Index()函式來檢查字串“hello world”中是否存在字元“o”。該函式返回字元“o”第一次出現的索引,即4。我們還檢查字元“z”,由於它不存在於字串中,所以返回-1。

使用迴圈

另一種檢查Go語言字串中是否存在字元的方法是使用迴圈遍歷字串中的每個字元,並將其與目標字元進行比較。這是一個程式碼示例:

示例

package main

import (
   "fmt"
)

func main() {
   str := "hello world"
   target := 'o'
   found := false

   for _, c := range str {
      if c == target {
         found = true
         break
      }
   }
   fmt.Println(found) // true
}

輸出

true

在這個例子中,我們使用迴圈遍歷字串“hello world”的字元,並將它們的值與字元“o”進行比較。如果找到匹配項,我們將found變數設定為true並結束迴圈。迴圈結束後,我們輸出found的結果,即true,因為字串包含字元“o”。

結論

總之,可以使用多種內建函式和迴圈來檢查Go語言字串中是否存在字元或子字串。strings.Contains()函式和strings.Index()函式是最簡單和最有效的方法來檢查子字串是否存在於字串中;對於更復雜的搜尋,可以使用迴圈。瞭解這些方法可以幫助你在處理字串時編寫更高效、更有效的Go語言程式碼。

更新於:2023年4月7日

5K+ 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告