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.