GO语言常用标准库01---strings包
package main import (
"fmt"
"strings"
) func main031() {
fmt.Printf("字符形式:%c;\n", 0x007B) //{
fmt.Printf("UTF8码值(序号)形式:%U;\n", "妹")//U+007B
} /*检索字符串*/
func main() {
//判断字符串s是否包含子串substr。
fmt.Println(strings.Contains("你妹啊","我")) //false
fmt.Println(strings.Contains("你妹啊","你妹")) //true //判断字符串s是否包含utf-8码值r。
fmt.Println(strings.ContainsRune("你妹啊{",0x59b9)) //true 包含字符“妹”
fmt.Println(strings.ContainsRune("你妹啊{",'妹')) //true
fmt.Println(strings.ContainsRune("你妹啊{",'浪')) //false //判断s是否包含chars中的任意一个字符
fmt.Println(strings.ContainsAny("你妹啊", "笑你个头")) //true
fmt.Println(strings.ContainsAny("hello", "笑个鸟")) //false //子串sep在字符串s中第一次出现的位置
fmt.Println(strings.Index("hello","h")) //0
fmt.Println(strings.Index("hello","e")) //1
fmt.Println(strings.Index("hello","hex")) //-1子串不存在
fmt.Println(strings.Index("你妹啊","妹")) //3 在UTF8字符集中,一个汉字占3字节,此处的“位置”,一个位置对应一个字节 //字符串chars中的任一utf-8码值在s中第一次出现的位置,如果不存在或者chars为空字符串则返回-1。
fmt.Println(strings.IndexAny("hello","asshole"))//0
fmt.Println(strings.IndexAny("高兴你妹啊", "笑你个头"))//6(UTF8字符集中一个汉字占3字节)
}
/*格式化*/
func main034() {
fmt.Println(strings.ToUpper("HeLlo")) //HELLO
fmt.Println(strings.ToLower("HeLlo")) //hello
fmt.Println(strings.ToTitle("HeLlo")) //HELLO
} /*比较大小*/
func main035() {
fmt.Println(strings.Compare("hello", "world")) // -1
fmt.Println(strings.Compare("hello", "asshole")) // 1
fmt.Println(strings.Compare("hello", "hello")) // 0
fmt.Println(strings.Compare("ass", "ASS")) // 在字符串中大写字母比较靠前
} //空白字符:空格,\t制表符,\n换行符,\r回车符(回行首)
func main036() {
fmt.Println(strings.TrimSpace(" 你妹 啊 "))
fmt.Println(strings.TrimSpace("\t你妹 啊\t\n"))
fmt.Println(strings.TrimPrefix("男:你妹啊男:", "男:"))//你妹啊男:
fmt.Println(strings.TrimSuffix("男:你妹啊男:", "男:"))//男: 你妹啊 /*
裁剪头尾的自定义字符
第二个参数f 自定义裁剪规则(对传入的参数字符返回true代表要裁剪掉)
*/
fmt.Println(strings.TrimFunc("男:你妹啊 女:你大爷的 合:我们是吉祥的一家嬲", func(r rune) bool {
if r == '男' || r == '女' || r == '嬲'{
return true
}
return false
}))
} /*分割与拼接*/
func main() {
//seperator 分隔符
fmt.Println(strings.Split("他好 我也好 大家好才是真的好", " "))//[他好 我也好 大家好才是真的好]
fmt.Println(strings.SplitAfter("他好,我也好,大家好才是真的好", ","))//[他好, 我也好, 大家好才是真的好] //炸碎为N段
fmt.Println(strings.SplitN("他好,我也好,大家好才是真的好,好好学习", ",", 2))//[他好 我也好,大家好才是真的好,好好学习]
fmt.Println(strings.SplitAfterN("他好,我也好,大家好才是真的好,好好学习", ",", 2))//[他好, 我也好,大家好才是真的好,好好学习] //拼接
fmt.Println(strings.Join([]string{"男","女","娘炮","女汉子","人妖"}, ""))
}
GO语言常用标准库01---strings包的更多相关文章
- GO语言常用标准库03---time包
package main import ( "fmt" "time" ) func main021() { nowTime := time.Now() fmt. ...
- GO语言常用标准库02---os包
package main import ( "fmt" "os" ) func main() { //获得当前工作路径(当前工程根目录) dir, err := ...
- GO语言常用标准库04---flag读取命令行参数
package main import ( "flag" "fmt" "math" "os" ) /* go build ...
- Go1.13 标准库的 http 包爆出重大 bug,你的项目中招了吗? 原创: 王亚楼 Go语言中文网 今天
Go1.13 标准库的 http 包爆出重大 bug,你的项目中招了吗? 原创: 王亚楼 Go语言中文网 今天
- 一文说透 Go 语言 HTTP 标准库
本篇文章来分析一下 Go 语言 HTTP 标准库是如何实现的. 转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/561 ...
- C语言常用的库文件(头文件、函数库)
C语言常用的库文件(头文件.函数库) C系统提供了丰富的系统文件,称为库文件.C的库文件分为两类,一类是扩展名为".h"的文件,称为头文件,在前面的包含命令中我们已多次使用过.在& ...
- 【循序渐进学Python】11.常用标准库
安装完Python之后,我们也同时获得了强大的Python标准库,通过使用这些标准库可以为我们节省大量的时间.这里是一些常用标准库的简单说明.更多的标准库的说明,可以参考Python文档 sys 模块 ...
- arm的编译器里已经有C标准库的lib包了,android为啥还要自己再实现呢
arm的编译器里已经有C标准库的lib包了,android为啥还要自己再实现呢 google自己搞的bionic libc来替代glibc想来是有原因的,本来glibc也是lgpl,应该也没有版权问题 ...
- 第二章 函数编程&常用标准库
函数编程&常用标准库 ...
随机推荐
- SpringAOP_设置注入实现
SpringAOP_设置注入实现 AOP_面向切面编程初步了解 让我们先想象一个场景,你正在编写一个项目,在开发过程中的多个模块都有某段重复的代码,于是你选择将其抽象成一个方法,然后在需要的地方调用这 ...
- OAuth 2.0、OIDC 原理
OAuth 目录 OAuth 什么是 OAuth? 为什么是 OAuth? SAML OAuth 和 API OAuth 主要组件 OAuth 作用域 OAuth 参与者 OAuth 令牌 OAuth ...
- hdu4994 博弈,按顺序拿球
题意: 给你n堆东西,两个人博弈的去拿,每次最少一个,最多是一堆,必须按顺序那,也就是只有把第一堆的东西拿完了才能去拿第二堆东西,谁先拿完谁胜,问新手是否能胜利. 思路: 显然 ...
- Win64 驱动内核编程-8.内核里的其他常用
内核里的其他常用 1.遍历链表.内核里有很多数据结构,但它们并不是孤立的,内核使用双向链表把它们像糖 葫芦一样给串了起来.所以遍历双向链表能获得很多重要的内核数据.举个简单的例子,驱 动对象 Driv ...
- Windows核心编程 第23章 结束处理程序
第2 3章 结束处理程序 SEH(结构化异常处理) 使用 S E H的好处就是当你编写程序时,只需要关注程序要完成的任务. 如果在运行时发生什么错误,系统会发现并将发生的问题通知你.利用S E H,你 ...
- HackingLab脚本关
目录 1:key又又找不到了 2:快速口算 3:这个题目是空的 5:逗比验证码第一期 6:逗比验证码第二期 7:逗比的验证码第三期(SESSION) 8:微笑一下就能过关了 9:逗比的手机验证码 10 ...
- pycharm2019
812LFWMRSH-eyJsaWNlbnNlSWQiOiI4MTJMRldNUlNIIiwibGljZW5zZWVOYW1lIjoi5q2j54mIIOaOiOadgyIsImFzc2lnbmVlT ...
- android之Tween Animation
android Tween Animation有四种,AlphaAnimation(透明度动画).ScaleAnimation(尺寸伸缩动画).TranslateAnimation(位移动画).Rot ...
- STL实现的底层数据结构简介
STL实现的底层数据结构简介 C++ STL 的实现: 1.vector 底层数据结构为数组 ,支持快速随机访问 2.list 底层数据结构为双向链表,支持快速增删 3.deque 底层数 ...
- 痞子衡嵌入式:MCUBootUtility v3.3发布,可配合SBL项目使用
-- 痞子衡维护的NXP-MCUBootUtility工具距离上一个大版本(v3.0.0)发布过去4个多月了,期间痞子衡其实断断续续做个几个小版本更新,这一次痞子衡为大家带来了稳定版本v3.3.0,顺 ...