Golang 将字符串转换为大写字母

Golang 将字符串转换为大写字母

字符串是Golang中的一种内置数据类型,用于表示字符序列。它们使用双引号(”)定义,可以包含任何有效的Unicode字符。在本文中,我们将编写一个Go语言程序将字符串转换为大写字母。我们将看到使用for循环和库函数来实现相应转换的用法。

方法1:使用用户定义的函数

在此方法中,我们将创建一个用户定义的函数来将字符串转换为大写。执行该操作的步骤如下:

步骤

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

  • 步骤2 - 然后,创建一个函数来将字符串转换为大写。该函数接受字符串作为参数。将得到的字符串转换为字节变量,并使用for循环遍历字节。

  • 步骤3 - 现在,如果构成字符串的字符是小写字母,则从字节中取出该特定字符,并从a和A之间的差值中减去,差值为32。

  • 步骤4 - 然后,将差值从字节数组的值中减去,并将其存回字节数组。

  • 步骤5 - 返回字节数组。开始main()函数。在main()内部初始化一个字符串,并在屏幕上打印它。

  • 步骤6 - 现在调用ToUpper()函数,并将字符串作为参数传递给它。将结果存储在一个名为result的变量中,并将结果打印在屏幕上。

示例

在这个示例中,我们将编写一个Go语言程序,通过使用外部函数将字符串转换为大写字母。

package main
import (
   "fmt"
)

//function to convert characters to upper case
func ToUpper(s string) string {
   b := []byte(s)
   for i, c := range b {
      if c >= 'a' && c <= 'z' {
         b[i] = c - ('a' - 'A')
      }
   }
   return string(b)
}

func main() {
   var input string = "convert this string to uppercase"
   fmt.Println("The given string is:\n", input)
   var output string = ToUpper(input)
   fmt.Println()
   fmt.Println("String obtained by converting the above string to uppercase is:\n", output)
}

输出

The given string is:
 convert this string to uppercase

String obtained by converting the above string to uppercase is:
 CONVERT THIS STRING TO UPPERCASE

方法2:使用内部函数

在这个方法中,我们将使用golang的内部函数将普通字符串转换为大写字符串。此方法中使用的语法如下所述:

语法

func ToUpper(r rune) rune

ToUpper()函数存在于unicode包中,用于将给定的字符串转换为大写。它以rune字符作为参数,并通过将给定的rune转换为大写来返回一个大写的rune。

func ToUpper(str string) string

ToUpper()函数存在于strings包中,用于将给定字符串转换为大写。该函数接受给定字符串作为参数,并返回将其转换为大写后的最终字符串。

func ToTitle(str string) string

ToTitle()函数存在于字符串包中,用于将字符串转换为大写。该函数将要转换的字符串作为参数传递,并返回转换为大写后的字符串。

步骤

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

  • 步骤2 - 现在,创建toUpper()函数,该函数接受要更改大小写的字符串并返回该字符串。在函数内部,我们首先将获得的字符串转换为rune,然后使用for循环遍历rune数组。

  • 步骤3 - 如果数组的字符为小写,则需要使用Unicode.Upper()函数将其转换为大写,将该字符作为参数传递给它。

  • 步骤4 - 现在,逐个将字符存储在初始化的数组中,并返回最终数组。

  • 步骤5 - 现在,启动main()函数。在这里,初始化一个类型为string的变量并将值存储在其中。进一步在屏幕上打印数组。

  • 步骤6 - 通过将字符串作为参数传递给ToUpper()函数,并将结果存储在变量中并在屏幕上打印。

示例1

在此示例中,我们将使用Unicode包将给定的字符串转换为大写字符。在此函数中,我们将逐个使用字符串的字符将其转换为大写。

package main
import (
   "fmt"
   "unicode"
)

func ToUpper(s string) string {
   a := []rune(s)
   for i, c := range a {
      if unicode.IsLower(c) {
         a[i] = unicode.ToUpper(c)
      }
   }
   return string(a)
}

func main() {
   var input string = "convert this string to uppercase"
   fmt.Println("The given string is:\n", input)
   var output string = ToUpper(input)
   fmt.Println()
   fmt.Println("The string obtained by converting above string to uppercase is:\n", output)
}

输出

The given string is:
 convert this string to uppercase

The string obtained by converting above string to uppercase is:
 CONVERT THIS STRING TO UPPERCASE

示例2

在这个示例中,我们将编写一个Go语言程序,使用strings包中的ToUpper()函数将字符串转换为大写。

package main
import (
   "fmt"
   "strings"
)

func main() {
   var input string = "convert this string to uppercase"
   fmt.Println("The given string is:\n", input)
   var output string = strings.ToUpper(input)
   fmt.Println()
   fmt.Println("The string obtained by converting the given string to uppercase is:\n", output)
}

输出

The given string is:
 convert this string to uppercase

The string obtained by converting the given string to uppercase is:
 CONVERT THIS STRING TO UPPERCASE

示例3

在这个示例中,我们将使用Go语言程序使用ToTitle()函数将字符串转换为大写。

package main
import (
   "fmt"
   "strings"
)

func main() {
   var str string = "This is a string to be converted"
   fmt.Println("The given string is:\n", str)
   fmt.Println()
   var res string = strings.ToTitle(str)
   fmt.Println("The string obtained by converting the above string to uppercase is:\n", res)
}

输出

The given string is:
 This is a string to be converted

The string obtained by converting the above string to uppercase is:
 THIS IS A STRING TO BE CONVERTED

结论

我们成功地编译和执行了一个Go语言程序,将字符串转换为大写,并提供了示例。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程