欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

golang如何去除多余空白字符(含制表符)

程序员文章站 2022-03-03 11:05:47
看代码吧~//利用正则表达式压缩字符串,去除空格或制表符func compressstr(str string) string { if str == "" { return ""...

看代码吧~

//利用正则表达式压缩字符串,去除空格或制表符
func compressstr(str string) string {
    if str == "" {
        return ""
    }
    //匹配一个或多个空白符的正则表达式
    reg := regexp.mustcompile("\\s+")
    return reg.replaceallstring(str, "")
}

补充:go语言去除字符串尾部所有空格

刷 leetcode 的一个算法题。

要求只删除字符串尾部的所有字符串. google 只搜出通过 strings.trim() 方法删除前后空格或者删除字符串前边和后边的固定子字符串。

方法

从字符串后端开始计算空格数量,然后用切片切掉:

func deletetailblank(str string) string {
 spacenum := 0
 for i := len(str)-1; i >= 0; i-- {  // 去除字符串尾部的所有空格
  if str[i] == ' ' {
   spacenum++
  } else {
   break
  }
 }
 return str[:len(str)-spacenum]
}

补充:go:字符串去除空格和换行符 strings.replace

看代码吧~

package main 
import (
 "fmt"
 "strings"
) 
func main() {
 str := "这里是 www\n.runoob\n.com"
 fmt.println("-------- 原字符串 ----------")
 fmt.println(str)
 // 去除空格
 str = strings.replace(str, " ", "", -1)
 // 去除换行符
 str = strings.replace(str, "\n", "", -1)
 fmt.println("-------- 去除空格与换行后 ----------")
 fmt.println(str)
}

golang如何去除多余空白字符(含制表符)

func replace(s, old, new string, n int) string

返回将s中前n个不重叠old子串都替换为new的新字符串,如果n<0会替换所有old子串。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。