Go語言程式:從左側修剪字串


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

方法一:使用使用者自定義函式

在這種方法中,我們將建立一個帶有 for 迴圈的使用者自定義函式來迭代字串。它將字串的字元與要移除的左側字元進行比較。如果它們相等,則從字串中移除該字元並列印剩餘的字串。

演算法

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

  • 步驟 2 − 然後開始 main() 函式。在 main() 中初始化一個字串併為其賦值。使用 fmt.Println() 函式將字串列印到螢幕上。

  • 步驟 3 − 現在,初始化一個整數型別的變數,並使用 for 迴圈迭代字串。然後將字串的每個字元與要儲存在字串中的左側字元進行比較。

  • 步驟 4 − 如果找到字元,則儲存其索引並中斷 for 迴圈。

  • 步驟 5 − 現在初始化一個新的字串來儲存結果,並在其中儲存從左側索引字元的索引開始的字元元素。

  • 步驟 6 − 現在使用 fmt.Println() 函式將這個新生成的字串列印到螢幕上。

示例

在這個例子中,我們將編寫一個 Go 語言程式,使用 for 迴圈從左側修剪字串。

package main
import (
   "fmt"
)

func main() {
   var str string = "a this is a string b"
   fmt.Println("The given string is:\n", str)
   fmt.Println()
   var left int
   for i, c := range str {
      if c != 'a' {
         left = i
         break
      }
   }
   trimmed := str[left:]
   fmt.Println("The string obtained after trimming the above string from both sides is:\n", trimmed)
}

輸出

The given string is:
 a this is a string b

The string obtained after trimming the above string from both sides is:
  this is a string b

方法二:使用預定義函式

在這種方法中,我們將使用 Golang 的內部修剪函式來修剪字串的左側 – TrimLeft() 和 TrimPrefix()。這兩個函式解釋如下:

語法

func TrimLeft(str string, cutstr string) string

TrimLeft() 函式位於 strings 包中,用於從字串左側移除元素。該函式接受兩個引數,一個是需要移除元素的字串,另一個是要移除的子字串。然後,該函式返回從左側移除給定子字串的出現後的最終字串。

func TrimPrefix(str, prefix string) string

TrimPrefix() 函式是 Go 語言中 strings 包中的一個內建函式,用於從字串中移除特定字首。該函式接受兩個變數作為引數,一個是需要移除元素的字串,另一個是要移除的字首子字串。移除子字串後,函式返回字串作為輸出。

演算法

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

  • 步驟 2 − 然後,我們需要啟動 main() 函式。在 main() 中初始化一個字串併為其賦值。然後將字串列印到螢幕上。

  • 步驟 3 − 現在,初始化一個字串型別的變數並呼叫 TrimLeft() 函式。將字串以及要移除的子字串作為引數傳遞給函式,並將最終結果儲存在新初始化的變數中。

  • 步驟 4 − 現在,列印一個新行,並使用 fmt.Println() 函式將上面獲得的字串列印到螢幕上。

示例

在這個例子中,我們將使用 Golang 的 TrimLeft() 函式:

package main
import (
   "fmt"
   "strings"
)

func main() {
   var str string = "a this is a string a"
   fmt.Println("The given string is:\n", str)
   var trimmed string
   trimmed = strings.TrimLeft(str, "a")
   fmt.Println()
   fmt.Println("The string obtained after trimming the above string from both sides is:\n", trimmed)
}

輸出

The given string is:
 a this is a string a

The string obtained after trimming the above string from both sides is:
  this is a string a

示例 2

在這個例子中,我們將編寫一個 Go 語言程式,使用 strings 包中的 TrimPrefix() 函式從左側修剪字串。

package main
import (
   "fmt"
   "strings"
)
func main() {
   var str string = " Hello, world "
   fmt.Println("The given string is:\n", str)
   var trimmed string
   var prefix string = " Hello, "
   trimmed = strings.TrimPrefix(str, prefix)
   fmt.Println()
   fmt.Println("The string obtained after trimming the above string from the left is:\n", trimmed)
}

輸出

The given string is:
  Hello, world 

The string obtained after trimming the above string from the left is:
 world 

結論

我們已經成功編譯並執行了一個 Go 語言程式來從左側修剪字串,並附帶示例。我們編寫了三個示例。我們在這篇文章中編寫了三個程式。在第一個示例中,我們使用 for 迴圈從字串中移除元素;在另外兩個示例中,我們使用 strings 包中的內建庫函式 TrimLeft() 和 TrimPrefix() 來執行相應的結果。

更新於:2023年2月17日

6K+ 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.