Go字符串常用处理
2024-10-19 12:02:07
应用到strings包
/**
* @Author: jadeshu
* @Description:
* @File: main
* @Version: 1.0.0
* @Date: 2019/11/7 1:01
*/
package main
import (
"fmt"
"strconv"
"strings"
)
func main() {
// 字符串连接组合
s := []string{"foo", "bar", "baz"}
fmt.Println(strings.Join(s, "|"))
// 字符串分割,返回切片
str := "foo@bar@hhh"
fmt.Println(strings.Split(str, "@"))
// 字符串中是否包含子串
b := strings.Contains(str, "oo")
fmt.Println(b)
// 字符串所在位置的索引 从0开始,不存在返回-1
index := strings.Index(str, "ar")
fmt.Println(index)
// 字符串重复
repeat := strings.Repeat(str, 3)
fmt.Println(repeat)
// 去掉字符串首尾空格
str = " I am str? "
fmt.Println("原来字符串内容:", str)
trim := strings.Trim(str, " ")
fmt.Println("去首尾空格后字符串内容:", trim)
// 去掉字符串所有空格
fields := strings.Fields(str)
fmt.Println(fields)
for i, data := range fields {
fmt.Println(i, data)
}
// ==========字符串转换================
// 字符串追加 ,先将内容转换为字符串在添加到数组中
//slice := append([]byte("hello "), "world"...)
slc := make([]byte, 0, 1024)
//slc := append([]byte("hello "), "jadeshu")
//slc = append(slc,'X')
fmt.Println(slc)
//fmt.Println(slice)
// 将bool值转换为字符串并追加到字节切片中 AppendXX函数
slc = strconv.AppendBool(slc, true)
fmt.Println(string(slc))
slc = strconv.AppendInt(slc, 1056, 10)
fmt.Println(string(slc))
slc = strconv.AppendQuote(slc, "adsad计算机的")
fmt.Println(string(slc))
slc = strconv.AppendQuoteRune(slc, '你')
fmt.Println(string(slc))
// 将其他格式值转换为字符串 FormatXXX函数
str2 := strconv.FormatBool(true)
fmt.Println(str2)
str2 = strconv.FormatInt(5056, 10)
fmt.Println(str2)
str2 = strconv.FormatFloat(3.1415926, 'f', -1, 64)
fmt.Println(str2)
// 整数转字符串
str2 = strconv.Itoa(1000)
fmt.Println(str2)
// 字符串整数转整数
in, e := strconv.Atoi("234")
if e != nil {
fmt.Println(e.Error())
}
fmt.Println(in)
// 字符串转其他类型
// ---1.字符串转bool值
bflg, _ := strconv.ParseBool("false")
fmt.Println(bflg)
// ---2.字符串转整数
i, _ := strconv.ParseInt("456", 10, 32)
fmt.Println(i)
}
最新文章
- 【求助】WPF 在XP下 有的Textbox光标会消失
- 高性能网站架构设计之缓存篇(6)- Redis 集群(中)
- u1-nav-js
- less 能加快css编写?
- msyql判断记录是否存在的三种方法
- uva 3523 Knights of the Round Table
- [Unity3D]Unity3D游戏开发之自己主动寻路与Mecanim动画系统的结合
- VM虚拟机安装苹果雪豹操作系统
- 关于oracle的certview
- iOS 实时录音和播放
- 华科机考:a+b
- mt8665芯片怎么样?联发科mt8665芯片参数介绍
- 将欢迎消息添加到PeopleSoft主页--登录事件
- I Think I Need a Houseboat POJ - 1005
- MySQL 还原
- 【机器学习】Google机器学习工程的43条最佳实践
- 【leetcode】35-Search Insert Position
- AngularJS.directive系列:嵌套directive的通讯及scope研究
- 目前.NET Core创建Windows Service比较好的一个开源框架:DasMulli.Win32.ServiceUtils
- android.intent.action.MAIN, android.intent.category.LAUNCHER