Go語言程式將字串轉換為小寫


在 Go 程式語言中,字串是一種內建資料型別,用於表示字元序列。它們使用雙引號 (") 定義,可以包含任何有效的 Unicode 字元。在本文中,我們將編寫一個 Go 語言程式來將字串轉換為小寫。

方法 1:使用使用者定義函式

在這種方法中,我們將建立一個使用者定義函式,使用 Go 程式語言將給定的字串轉換為小寫。

演算法

  • 步驟 1 − 首先,我們需要匯入 fmt 包。

  • 步驟 2 − 然後,建立一個函式將字串轉換為小寫。該函式接受字串作為引數。將獲得的字串轉換為位元組變數,並使用 for 迴圈迭代位元組。

  • 步驟 3 − 現在,如果構成字串的字元是小寫,則獲取位元組的特定字元,並從中減去 a 和 A 之間的差值(結果為 32)。

  • 步驟 4 − 之後,從位元組陣列的值中減去差值,並將它們儲存回字節陣列。

  • 步驟 5 − 返回位元組陣列。啟動 main() 函式。在 main() 中初始化一個字串並在螢幕上列印它。

  • 步驟 6 − 現在呼叫 ToLower() 函式並將字串作為引數傳遞給它。將獲得的結果儲存在名為 result 的變數中,並在螢幕上列印結果。

示例

在這個例子中,我們將編寫一個 Go 語言程式,透過使用外部函式將字串轉換為小寫。

package main
import (
   "fmt"
)

// function to convert characters to lower case
func ToLower(s string) string {
   var lower string
   for _, c := range s {
      if c >= 'A' && c <= 'Z' {
         lower += string(c + 32)
      } else {
         lower += string(c)
      }
   }
   return lower
}

func main() {
   var input string = "THIS IS A STRING TO BE CONVERTED"
   fmt.Println("The given string is:\n", input)
   var output string = ToLower(input)
   fmt.Println()
   fmt.Println("String obtained by converting the above string to lowercase is:\n", output)
}

輸出

The given string is:
 THIS IS A STRING TO BE CONVERTED

String obtained by converting the above string to lowercase is:
 this is a string to be converted

方法 2:使用內部函式

在這種方法中,我們將使用字串和 Unicode 的內部 ToLower() 函式在 Go 程式語言中將給定的字串轉換為小寫。

語法

func ToLower(r rune) rune

ToLower() 函式存在於 unicode 包中,用於將給定的字串轉換為小寫。它以 rune 字元作為引數,並透過將給定的 rune 轉換為小寫來返回一個小寫 rune。

func ToLower(str string) string

ToLower() 函式存在於 strings 包中,用於將給定的字串轉換為小寫。該函式接受給定的字串作為引數,並在將其轉換為小寫後返回最終字串。

演算法

  • 步驟 1 − 首先,我們需要匯入 fmt 和 Unicode 包。

  • 步驟 2 − 現在,建立 ToLower() 函式,該函式接受要更改大小寫的字串並返回該字串。在函式內部,我們首先將獲得的字串轉換為 rune,然後使用 for 迴圈迭代 rune 陣列。

  • 步驟 3 − 如果陣列的字元結果是小寫,則需要使用 Unicode.Lower() 函式將其轉換為小寫,並將該字元作為引數傳遞給它。

  • 步驟 4 − 現在,將字元逐個儲存在初始化的陣列中,並返回最終陣列。

  • 步驟 5 − 現在,啟動 main() 函式。這裡初始化一個字串型別的變數並向其儲存值。然後在螢幕上列印陣列。

  • 步驟 6 − 透過將字串作為引數傳遞給它來呼叫 ToLower() 函式,並將結果儲存在一個變數中並在螢幕上列印它。

示例 1

在這個例子中,我們將使用 Unicode 包在 Go 程式語言中將給定的字串轉換為小寫

package main
import (
   "fmt"
   "unicode"
)

func ToLower(s string) string {
   str := []rune(s)
   var lower string
   for _, c := range str {
      lower += string(unicode.ToLower(c))
   }
   return string(lower)
}

func main() {
   var input string = "CONVERT IT TO LOWERCASE"
   fmt.Println("The given string is:\n", input)
   var output string = ToLower(input)
   fmt.Println()
   fmt.Println("The string obtained by converting above string to lowercase:\n", output)
}

輸出

The given string is:
 CONVERT IT TO LOWERCASE

The string obtained by converting above string to lowercase:
 convert it to lowercase

示例 2

在這個例子中,我們將編寫一個 Go 語言程式,透過使用 strings 包中提供的 ToLower() 函式將字串轉換為小寫。

package main
import (
   "fmt"
   "strings"
)

func main() {
   var input string = "CONVERT IT TO LOWERCASE"
   fmt.Println("The given string is:\n", input)
   var output string = strings.ToLower(input)
   
   fmt.Println()
   fmt.Println("The string obtained by converting the given string to lowercase is:\n", output)
}

輸出

The given string is:
 CONVERT IT TO LOWERCASE

The string obtained by converting the given string to lowercase is:
 convert it to lowercase

結論

我們已經成功編譯並執行了一個 Go 語言程式,用於將字串轉換為小寫,以及一些示例。為了獲得所需的結果,我們使用了字串和 Unicode 包中提供的 for 迴圈和庫函式。

更新於: 2023年2月17日

2K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告