GO语言字符串处理函数之处理Strings包


Posted in Golang onApril 14, 2022

常用的字符串处理函数

(1) Contains

func Contains(s, substr string) bool

功能:字符串s中是否包含substr,返回bool值

演示如下:

//查找一个字符串在另一个字符串中是否出现
str1 := "hello world"
str2 := "g"
//Contains(被查找的字符串,查找的字符串)  返回值 bool
//一般用于模糊查找
b := strings.Contains(str1,str2)
//fmt.Println(b)
if b {
    fmt.Println("找到了")
}else {
    fmt.Println("没有找到")
}

(2) Join

func Join(a []string, sep string) string

功能:字符串链接,把slicea通过sep链接起来

演示如下:

//字符串切片
slice := []string{"123","456","789"}
//fmt.Println(slice)
//Join
//字符串的连接
str := strings.Join(slice,"")
fmt.Println(str)
//fmt.Printf("%T\n",str)

结果如下:

123456789

(3) Index

func Index(s, substr string) int

功能:在字符串s中查找sep所在的位置,返回位置值,找不到返回-1

str1 := "hello world"
str2 := "e"
//查找一个字符串在另一个字符串中第一次出现的位置 返回值  int  下标  -1 找不到
i := strings.Index(str1,str2)
fmt.Println(i)

结果如下:

1

(4) Repeat

func Repeat(s string, count int) string

功能:重复s字符串count次,最后返回重复的字符串

演示如下:

str := "性感网友,在线取名。"
//将一个字符串重复n次
str1 := strings.Repeat(str,100)
fmt.Println(str1)

(5) Replace

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

功能:在s字符串中,把old字符串替换为new字符串,n表示替换的次数,小于0表示全部替换

str := "性感网友在线取名性感性感性感性感性感"
//字符串替换  屏蔽敏感词汇
//如果替换次数小于0 表示全部替换
str1 := strings.Replace(str,"性感","**",-1)
fmt.Println(str1)

结果如下:

**网友在线取名**********

(6) Split

func Split(s, sep string) []string

功能:把s字符串按照sep分割,返回slice

//将一个字符串按照标志位进行切割变成切片
str1 := "123456789@qq.com"
slice := strings.Split(str1,"@")
fmt.Println(slice[0])

结果如下:

123456789

(7) Trim

func Trim(s string, cutset string) string

功能:在s字符串的头部和尾部去除cutset指定的字符串

str := "====a===u=ok===="
//去掉字符串头尾的内容
str1:= strings.Trim(str,"=")
fmt.Println(str1)

结果如下:

a===u=ok

(8) Fields

func Fields(s string) []string

功能:去除s字符串的空格符,并且按照空格分割返回slice

str := "    are you ok    "
//去除字符串中空格  转成切片  一般用于统计单词个数
slice := strings.Fields(str)
fmt.Println(slice)

字符串转换

通过以上的讲解,发现字符串的处理是非常重要的,GO语言也提供了字符串与其它类型之间相互转换的函数。相应的字符串转换函数都在”strconv”包。

(1) Format

Format 系列函数把其他类型的转换为字符串。

//将其他类型转成字符串  Format
b := false
str := strconv.FormatBool(true)
fmt.Println(str)
fmt.Printf("%T\n",str)
str := strconv.FormatInt(120,10)  //计算机中进制 可以表示2-36  2  8  10 16
fmt.Println(str)
//   'f'打印方式   以小数方式    4 指小数位数  64  以float64处理
str:= strconv.FormatFloat(3.14159,'f',4,64)
fmt.Println(str)
str := strconv.Itoa(123)
fmt.Println(str)

(2) Parse

Parse 系列函数把字符串转换为其他类型

//字符串转成其他类型  Parse
b,err := strconv.ParseBool("true")
if err!=nil {
    fmt.Println("类型转换出错")
}else {
    fmt.Println(b)
    fmt.Printf("%T\n",b)
}
v,err := strconv.ParseInt("abc",16,64)
fmt.Println(v,err)
v,_ := strconv.ParseFloat("3.14159",64)
fmt.Println(v)
v,_:=strconv.Atoi("123")
fmt.Println(v)

(3) Append

Append 系列函数将整数等转换为字符串后,添加到现有的字节数组中。

slice := make([]byte,0,1024)
//将其他类型转成字符串 添加到字符切片里

slice = strconv.AppendBool(slice,false)
slice = strconv.AppendInt(slice,123,2)
slice = strconv.AppendFloat(slice,3.14159,'f',4,64)
slice = strconv.AppendQuote(slice,"hello")
fmt.Println(string(slice))

对应的结果是:

false11110113.1416"hello"

以上就是GO语言字符串处理Strings包的函数使用示例讲解的详细内!

Golang 相关文章推荐
go:垃圾回收GC触发条件详解
Apr 24 Golang
golang正则之命名分组方式
Apr 25 Golang
解决Golang中ResponseWriter的一个坑
Apr 27 Golang
Go使用协程交替打印字符
Apr 29 Golang
Go 在 MongoDB 中常用查询与修改的操作
May 07 Golang
使用golang编写一个并发工作队列
May 08 Golang
如何利用golang运用mysql数据库
Mar 13 Golang
Golang 实现 WebSockets 之创建 WebSockets
Apr 24 Golang
Golang入门之计时器
May 04 Golang
深入理解 Golang 的字符串
May 04 Golang
Golang实现可重入锁的示例代码
May 25 Golang
Go gorilla securecookie库的安装使用详解
Aug 14 Golang
golang的文件创建及读写操作
Apr 14 #Golang
golang定时器
Apr 14 #Golang
golang用type-switch判断interface的实际存储类型
Apr 14 #Golang
golang语言指针操作
Apr 14 #Golang
golang使用map实现去除重复数组
Apr 14 #Golang
golang生成并解析JSON
Apr 14 #Golang
Go语言 详解net的tcp服务
Apr 14 #Golang
You might like
调试一段PHP程序时遇到的三个问题
2012/01/17 PHP
8个必备的PHP功能实例代码
2013/10/27 PHP
php导出csv文件,可导出前导0实例代码
2016/11/16 PHP
Yii2.0实现生成二维码功能实例
2017/10/24 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
2019/11/14 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
js checkbox(复选框) 使用集锦
2009/04/28 Javascript
dotopAlert 提示用户需安装播放器的代码
2012/09/17 Javascript
nodejs爬虫抓取数据之编码问题
2015/07/03 NodeJs
jQuery判断是否存在滚动条的简单方法
2016/09/17 Javascript
jstree单选功能的实现方法
2017/06/07 Javascript
详解vue中引入stylus及报错解决方法
2017/09/22 Javascript
js+css实现打字效果
2020/06/24 Javascript
JavaScript Canvas实现验证码
2020/08/02 Javascript
js jquery 获取某一元素到浏览器顶端的距离实现方法
2018/09/05 jQuery
vue-router的两种模式的区别
2019/05/30 Javascript
如何在微信小程序中实现Mixins方案
2019/06/20 Javascript
js之切换全屏和退出全屏实现代码实例
2019/09/09 Javascript
Vue.js的模板语法详解
2020/02/16 Javascript
JavaScript定时器使用方法详解
2020/03/26 Javascript
Python中的日期时间处理详解
2016/11/17 Python
wxPython的安装图文教程(Windows)
2017/12/28 Python
Python 二叉树的层序建立与三种遍历实现详解
2019/07/29 Python
pandas 空数据处理方法详解
2019/11/02 Python
python中字符串的编码与解码详析
2020/12/03 Python
Python扫描端口的实现
2021/01/25 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
行政经理的岗位职责
2013/11/23 职场文书
大学生校园创业计划书
2014/02/08 职场文书
银行办公室岗位职责
2014/03/10 职场文书
保险公司年会主持词
2014/03/22 职场文书
基层党员公开承诺书
2014/05/29 职场文书
单位委托书怎么写
2014/08/02 职场文书
机电专业毕业生自我鉴定2014
2014/10/04 职场文书
爱国主题班会教案
2015/08/14 职场文书