Golang 删除字符串中的所有空格

Golang 删除字符串中的所有空格

当我们从字符串中删除空格时,意味着删除空格、制表符和其他空格字符,包括换行符。这有助于解析用户输入或处理特定格式的数据,以及我们希望在进一步处理字符串之前清理或标准化字符串的情况。有很多种方法可以消除字符串中的空白。使用TrimSpace函数,可以消除字符串开头和结尾的空白字符。使用Replace函数将字符串中的空白替换为一个完全为空的字符串,并使用regexp包可以消除所有空白。在本文中,我们将看到如何使用Golang示例从字符串中删除空格。

方法1:使用strings.Replace()函数

在这个方法中,strings.Replace()函数被指示用第三个参数(-1)替换所有实例。然后,打印一个没有空格的字符串。让我们通过示例:和算法来更好地理解概念。

语法

strings.Replace()

Golang中的strings包提供了一个内置的Replace函数,可用于将所提供字符串中的某个子字符串替换为另一个子字符串。Replace函数需要三个参数:第一个字符串、被替换的子字符串和被替换的子字符串。它返回一个新字符串,其中替换的子字符串替换了原始子字符串的每个实例。

步骤

  • 步骤1 - 在程序中创建一个main包,并声明fmt(格式化包)和strings包,其中main包生成可执行示例,fmt帮助格式化输入和输出。

  • 步骤2 - 将要去除空格的字符串设置为变量mystr的初始值。

  • 步骤3 - 使用Replace函数(””)替换所有实例,将空格字符(” “)替换为空字符串。函数被指示用第三个参数(-1)替换所有实例。

  • 步骤4 - 使用fmt.Println()函数在控制台上打印更新后的字符串,其中ln表示换行。

示例

在这个示例中,我们使用Replace函数(””)将空格字符(” “)的每个实例替换为空字符串。

package main
import (
   "fmt"
   "strings"
)

func main() {
   mystr := "Hi i am an engineer i work as a frontend developer" //create strings
   fmt.Println("The string before removal of whitespaces is:", mystr)
   mystr = strings.Replace(mystr, " ", "", -1)  //using this built-in function remove whitespaces
   fmt.Println("The string after removing whitespaces is:")
   fmt.Println(mystr) //remove string without whitespaces
}

输出

The string before removal of whitespaces is: Hi i am an engineer i work as a frontend developer
The string after removing whitespaces is:
Hiiamanengineeriworkasafrontenddeveloper

方法2:使用regexp.Compile方法

在这个示例中,使用正则表达式将所有空格移除。为了创建一个匹配一个或多个空格字符(s+)的正则表达式模式,我们使用了regexp包。然后使用ReplaceAllString函数将每个匹配模式的地方替换为空字符串。然后打印一个没有空格的字符串。让我们通过示例和算法知道另一种从字符串中移除空格的方法。

语法

regexp.Compile()

在Go语言中,正则表达式可以通过regexp包中的Compile函数编译成更有效的匹配形式。正则表达式模式作为单个参数传递给Compile函数,它返回一个*Regexp结构。

步骤

  • 步骤1 - 在主要生成可执行示例时,在程序中创建一个main包并声明fmt (格式化包)和regexp包。

  • 步骤2 - 将要去除空格的字符串设置为main函数中变量mystr的初始值。

  • 步骤3 - 使用regexp创建一个匹配一个或多个空格字符的正则表达式模式。

  • 步骤4 - Compile(“\s+”)

  • 步骤5 - 使用ReplaceAllString方法,使用reg将所有匹配的模式替换为空字符串。

  • 步骤6 - 语法将为ReplaceAllString(str, “”)以删除空格。

  • 步骤7 - 使用fmt.Println()函数将更新后的字符串打印到控制台,其中ln表示换行。

示例

在这个示例中,我们将使用golang的regexp.Compile()函数来删除字符串的所有空格。

package main
import (
   "fmt"
   "regexp"
)

func main() {
   mystr := "Hi i am a frontend developer"  //create string
   fmt.Println("The string before removal of whitespaces is:", mystr)
   reg, _ := regexp.Compile("s+")  //compile 
   mystr = reg.ReplaceAllString(mystr, "") //remove whitespaces
   fmt.Println("The string after removal of whitespaces is:")
   fmt.Println(mystr) //print string without whitespaces
}

输出

The string before removal of whitespaces is: Hi i am a frontend developer
The string after removal of whitespaces is:
Hi i am a frontend developer

结论

我们执行了使用两个示例从字符串中删除所有空格的程序。在第一个示例中,我们使用了内置函数strings.Replace(),在第二个示例中,我们使用了regexp.Compile()函数。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程