Go语言中strings使用

本文介绍如何使用Go语言的strings包进行字符串处理,包括去除首尾特定符号、全局替换字符以及按次数替换。实例演示了trim、replace和replaceAll函数的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

比如获得的API值需要去特殊符号
1、把字符串 s 左边的+ 右边的- 去掉

package main

import (
	"fmt"
	"strings"
)
func main() {
	s := "++-+1234567-+--"

	//去除首部第一次匹配到的关于“+”符号的,和尾部第一次匹配到的关于“-“符号的字符
	s1 := strings.TrimPrefix(s,"+")
	s2 := strings.TrimSuffix(s1,"-")
	fmt.Printf("%v\n", s2) //结果是:+-+1234567-+-
}

2、去除首部匹配到的所有关于“+”符号(匹配不到截至),和尾部关于“-“符号的所有字符(匹配不到截至)

package main

import (
	"fmt"
	"strings"
)
func main() {
	s := "++-+1234567-+--"
	
	//去除首部分关于“+”符号的,和尾部关于“-“符号的字符
	s1 := strings.TrimLeft(s,"+")
	s2 := strings.TrimRight(s1,"-")
	fmt.Printf("%v\n", s2) //结果是:-+1234567-+
	
	
}

3、把所有符号全部去掉
使用strings.ReplaceAll 替换所有匹配的字符,如果把匹配到的字符全部替换成空格,相当于删除所有匹配的字符。
函数格式:

func ReplaceAll(s, old, new string) string

例子:

package main

import (
	"strings"
	"fmt"
)

func main()  {
	str := "map[1,2,3,4,5,6]"
	str1 :=strings.ReplaceAll(str,"[","")
	str2 :=strings.ReplaceAll(str1,"map","")
	str3 := strings.ReplaceAll(str2,"]","")
	fmt.Println(str3)
}

运行结果:1,2,3,4,5,6

4、修改指定次数匹配到的字符
函数格式:

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

n代表匹配到的次数,如果n等于-1代表匹配所有字符

例子:

package main

import (
	"fmt"
	"strings"
)
func main() {
		s := "Hello 世界!"
		s = strings.Replace(s, " ", ",", -1) //匹配所有空格替换成逗号
		fmt.Println(s) //结果是:Hello,世界!
/*		s = strings.Replace(s, "", "|", -1) //把所有字符全部前面加竖杠
		fmt.Println(s) //结果是:|H|e|l|l|o|,|世|界|!|*/
		s = strings.Replace(s,"","/",2) //匹配前两次的字符替换成斜杠
		fmt.Println(s) //结果是:/H/ello,世界!
	}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维归一

整理不易,请个辣条吃吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值