strings包实现了用于操作字符的简单函数。

func EqualFold

判断两个utf-8编码字符串(将unicode大写、小写、标题三种格式字符视为相同)是否相同。

func EqualFold(s, t string) bool

示例:

func main() {

	str1 := "Golang"
str2 := "golang" fmt.Println(strings.EqualFold(str1, str2)) //输出: true
}

HasPrefix

判断s是否有前缀字符串prefix。

func HasPrefix(s, prefix string) bool

示例:

func main() {

	var str string = "Hello"

	fmt.Println(strings.HasPrefix(str, "He")) //true
fmt.Println(strings.HasPrefix(str, "he")) //false
}

func HasSuffix

判断s是否有后缀字符串suffix。

func HasSuffix(s, suffix string) bool

示例:

func main() {

	var str = "Hello"

	fmt.Println(strings.HasSuffix(str, "llo")) //true
fmt.Println(strings.HasSuffix(str, "ll")) //false
}

func Contains

判断字符串s是否包含子串substr。

func Contains(s, substr string) bool

示例:

func main() {

	var str = "中国,台湾"

	fmt.Println(strings.Contains(str, "台湾")) //true
fmt.Println(strings.Contains(str, "日本")) //false
}

func ContainsRune

判断字符串s是否包含utf-8码值r。

func ContainsRune(s string, r rune) bool

示例:

func main() {

	var r rune = '中'
var str = "中国" fmt.Println(strings.ContainsRune(str, r)) //true
fmt.Println(strings.ContainsRune(str, '日')) //false
}

func ContainsAny

判断字符串s是否包含字符串chars中的任一字符。

func ContainsAny(s, chars string) bool

示例:

func main() {

	var s = "我爱你,中国"
var chars = "我爱你"
var test = "日" fmt.Println(strings.ContainsAny(s, chars)) //true
fmt.Println(strings.ContainsAny(s, test)) //false
}

func Count

返回substr在字符串s中出现的次数,如果substr是一个空字符串,则返回字符串s的unicode长度+1

func Count(s, substr string) int

示例:

func main() {

	var s    = "Jack,This is 龙"
var seq1 = "is"
var seq2 = "龙"
var seq3 = ""
fmt.Println("字符串s的长度为:", utf8.RuneCountInString(s))
fmt.Println(strings.Count(s, seq1)) //2
fmt.Println(strings.Count(s, seq2)) //1
fmt.Println(strings.Count(s, seq3)) //15 }

func Index

子串substr在字符串s中第一次出现的位置,不存在则返回-1。

func Index(s, substr string) int

示例:

func main() {

	var s       = "hello,world"
var substr = "o"
var substr2 = "a"
fmt.Println(strings.Index(s, substr)) //4
fmt.Println(strings.Index(s, substr2)) //-1 }

func IndexByte

字符c在s中第一次出现的位置,不存在则返回-1。

func IndexByte(s string, c byte) int

示例:

func main() {

	var s       = "hello,world"
var c1 byte = 'o'
var c2 byte = 'a'
fmt.Println(strings.IndexByte(s, c1)) //4
fmt.Println(strings.IndexByte(s, c2)) //-1 }

Go语言strings包的更多相关文章

  1. Go语言基础包之net/http

    Go语言基础包之net/http Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现. net/http介绍 Go语言内置的net/http包提供了HTTP客户端和服务端的 ...

  2. R语言-神经网络包RSNNS

    code{white-space: pre;} pre:not([class]) { background-color: white; }if (window.hljs && docu ...

  3. Golang学习 - strings 包

    ------------------------------------------------------------ strings 包与 bytes 包中的函数用法基本一样,不再赘述. 只对 R ...

  4. R语言-Knitr包的详细使用说明

    R语言-Knitr包的详细使用说明 by 扬眉剑 来自数盟[总舵] 群:321311420 1.相关资料 1:自动化报告-谢益辉 https://github.com/yihui/r-ninja/bl ...

  5. R语言dplyr包初探

    昨天学了一下R语言dplyr包,处理数据框还是很好用的.记录一下免得我忘记了... 先写一篇入门的,以后有空再写一篇详细的用法. #dplyr learning library(dplyr) #fil ...

  6. 19-03【golang】strings包

    golang的strings包提供了字符串操作的一系列函数.下面做个简单介绍 函数 用法 备注 Compare(a,b sring) 比较两个字符串   Contains(s, substr stri ...

  7. R语言 ggplot2包

    R语言  ggplot2包的学习   分析数据要做的第一件事情,就是观察它.对于每个变量,哪些值是最常见的?值域是大是小?是否有异常观测? ggplot2图形之基本语法: ggplot2的核心理念是将 ...

  8. R语言扩展包dplyr——数据清洗和整理

    R语言扩展包dplyr——数据清洗和整理 标签: 数据R语言数据清洗数据整理 2015-01-22 18:04 7357人阅读 评论(0) 收藏 举报  分类: R Programming(11)  ...

  9. go语言path包和filepath包的学习与使用

    path包的使用 package main; import ( "fmt" "path" ) //go语言path包的学习 func main() { //返回 ...

随机推荐

  1. 手把手教你使用 netlify 实现前端的 自动部署 + HTTPS

    随着开源工具越来越多,特别是nodejs构建微服务器之快,实现前端自动化部署越来越简单了,有可能[10行js代码+10行sh脚本+设置github的webhook]就能实现,但是如果你和我一样,就是& ...

  2. 玩转DWZ (一)---项目中怎么使用dwz

    最近一直在找一个完全开源的web客户端框架,看到了dwz,虽然不知道到底怎么样,但还是支持国产,先学习一下.这篇文章先说一下怎么在项目里使用dwz框架. 首先先下载dwz:https://code.c ...

  3. mysql按条件 导出sql

    mysqldump还有一个参数,就是--where 指定条件,这样我们就可以对一张表里的某些符合条件的数据,进行备份,导出.sql文件了 mysqldump -u root -p DB_Name -- ...

  4. dqname.go

    package nsqd func getBackendName(topicName, channelName string) string {     // backend names, for u ...

  5. "unresolved reference 'appium' "问题解决

    根据github的教程安装好"Appium-Python-Client"后,代码里写入"from appium import webdriver"就报错&quo ...

  6. appium---【已解决】【Mac】如何查看java的安装路径及JAVA_HOME环境变量的配置

    报错截图:根据提示可以看出,JAVA_HOME的环境变量配置错误,需要重新配置. 1.查看Java版本 打开mac电脑,查看java版本,打开终端Terminal,通过命令查看java的版本 Luck ...

  7. mybatis-generator自動逆向生成文件

    首先在maven里面添加插件 <plugins> <plugin> <groupId>org.mybatis.generator</groupId> & ...

  8. 使用BeetleX的TcpBenchmark工具进行百万设备模拟测试

    其实TCP测试的工具有很多,那BeetleX工具所提供的特点又是什么呢?如果你需数十万的请求或模拟上百万的设备连接,那这个工具相信可以满足你的需要!工具是基于BeetleX的基础功能扩展,支持多IP绑 ...

  9. 支持向量机(Support Vector Machine,SVM)—— 线性SVM

      支持向量机(Support Vector Machine,简称 SVM)于 1995 年正式发表,由于其在文本分类任务中的卓越性能,很快就成为机器学习的主流技术.尽管现在 Deep Learnin ...

  10. 理解线程池到走进dubbo源码

    引言 合理利用线程池能够带来三个好处. ​ 第一:降低资源消耗.通过重复利用已创建的线程降低线程创建和销毁造成的消耗. ​ 第二:提高响应速度.当任务到达时,任务可以不需要等到线程创建就能立即执行. ...