Golang 从字符串中获取子字符串

Golang 从字符串中获取子字符串

在Go中,子字符串是较大字符串的一部分。它由提供起始索引和长度来指定,并且它包含从起始索引开始并延伸到指定长度的原始字符串的字符。子字符串中的字符仍然是原始字符串的一部分,并共享同一内存。

在Go中,字符串是字符序列。它是一个不可变的数据类型,意味着一旦创建了一个字符串,就无法修改它。字符串用双引号(“”)包围,可以包含任何字母、数字和符号的组合。

方法1:使用Trimspace函数

在这个示例中,我们将编写一个Go语言程序,通过使用一个外部函数来从字符串中获取子字符串。我们创建的函数将以字符串作为参数,以及应该获取字符串元素的起始和结束变量。

语法

For Output Code pre class

trimSpace()函数位于strings包中,用于去除字符串中字符之间的空格。该函数接受一个必需的字符串作为参数,并返回去除了单词之间空格后得到的最终字符串。

步骤

  • 步骤1 - 首先,我们需要导入fmt和strings包。

  • 步骤2 - 创建一个函数,该函数以字符串及其所要获取子字符串的两个索引作为参数,并返回子字符串。

  • 步骤3 - 开始main()函数。

  • 步骤4 - 在main中初始化一个字符串变量并将值存储在其中。

  • 步骤5 - 在屏幕上打印变量。

  • 步骤6 - 现在通过向其传递所需参数来调用子字符串函数,并将函数返回的结果存储在一个变量中。

  • 步骤7 - 该变量包含给定索引之间的子字符串。在屏幕上打印它们。

示例

使用外部函数从字符串中获取子字符串的Go语言程序

package main
import (
   "fmt"
   "strings"
)

// Substring function to get a substring from the string
func Substring(str string, start, end int) string {
   return strings.TrimSpace(str[start:end])
}
func main() {
   // initializing a string
   var str string = "Live young live free"
   fmt.Println("The given string is:", str)

   // Get substring from index 5 to 15
   substring := Substring(str, 5, 15)

   fmt.Println("The string values between the index 5 and 15 are:", substring)
}

输出

The given string is: Live young live free
The string values between the index 5 and 15 are: young live

方法2:使用索引的概念

在本文中,我们将使用索引的概念来编写一个Go语言程序,以从原始字符串中获取子字符串。

步骤

  • 步骤1 − 首先,我们需要导入fmt包。

  • 步骤2 − 开始main()函数。

  • 步骤3 − 在main()内初始化一个字符串变量并赋值。

  • 步骤4 − 通过使用fmt.Println()函数将该数组打印在屏幕上。

  • 步骤5 − 进一步,初始化两个整数类型的变量以存储数组的起始和结束索引。

  • 步骤6 − 将结果存储在一个名为result的变量中,并通过使用fmt.Println()函数将此变量打印在屏幕上。

示例

使用索引的概念,获取字符串中的子字符串的Go语言程序。

package main
import "fmt"
func main() {

   // initializing a string
   var str string = "Prevention is better than cure"
   fmt.Println("The given array is:", str)

   var startInd int = 11
   var endInd int = 20

   result := str[startInd:endInd]
   fmt.Println()
   fmt.Println("The substring is required between", startInd, "and", endInd)

   fmt.Println("Array obtained after getting elements between the above indices are:", result)
}

输出

The given array is: Prevention is better than cure
The substring is required between 11 and 20
Array obtained after getting elements between the above indices are: is better

方法3:使用Split函数

在这个示例中,我们将使用Split函数来从go语言的字符串中获取子字符串。

语法

func Split(str, sep string) []string

Split()函数用于通过提供的分隔符将字符串分割。该函数位于strings包中,它接受要分割的字符串作为参数以及一个分隔符。然后,该函数将作为结果返回最终的字符串数组。

步骤

  • 步骤1 − 首先,我们需要导入fmt和strings包。

  • 步骤2 − 然后开始main()函数。

  • 步骤3 − 在这个函数内部初始化一个字符串变量并赋值给它。

  • 步骤4 − 进一步将字符串打印到屏幕上。

  • 步骤5 − 使用strings包中的split()函数。

  • 步骤6 − 在一个新变量中存储子字符串中的元素索引。

  • 步骤7 − 现在,使用fmt.Println()函数将子字符串打印到屏幕上。

示例

使用split函数从字符串中获取子字符串的Go langauage程序

package main
import (
   "fmt"
   "strings"
)

func main() {
   // Initializing a string
   var str string = "Never give up"
   fmt.Println("The given string is:", str)
   // Split string into a slice of substrings
   substrings := strings.Split(str, " ")
   substring := substrings[1]

   fmt.Println("The second element in the above string is:", substring)
}

输出

The given string is: Never give up
The second element in the above string is: give

结论

我们成功编译并执行了一个Go语言程序,用于从给定字符串中获取子字符串,并提供了示例。我们在第一个示例中使用了一个单独的函数和trimSpace()函数,而在第二个示例中,我们使用了索引的概念来实现结果。在第三个示例中,我们使用了strings包中的split()函数。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程