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. tk.mybatis.mapper.provider.SpecialProvider.<init>()

    2017-03-26 23:44:29.192 ERROR 48392 --- [p-nio-80-exec-5] c.t.global.exception.GlobalExHandler : nes ...

  2. 详解Linux文档属性、拥有者、群组、权限、差异

    写在前面 我们都知道Linux是一个支持多用户.多任务的系统,这也是它最优秀的特性,即可能同时有很多人都在系统上进行工作,所以千万不要强制关机,同时,为了保护每个人的隐私和工作环境,针对某一个文档(文 ...

  3. 7-14 backbone源码

    _.extend = function(obj) { // each循环参数中的一个或多个对象 each(slice.call(arguments, 1), function(source) { // ...

  4. java 匿名对象,内部类,修饰符,代码块

    匿名对象是在建对象时只有创建对象的语句方法而没有把对象的地址赋值给变量,匿名对象只能调用一次方法,想再调用时需要再创建一个新的匿名对象 创建普通对象:Person p =new Person(); 创 ...

  5. 自动化测试基础二(Python基础)

    1.为什么学习Python 1)简单.易学 2)强大:交互性.解释性.编译性.跨平台 3)市场需求上升快.顺应市场需要 4)自动化测试需要使用编程语言来写脚本 2.需要学习Python哪些内容? 1) ...

  6. nsqlookupd.go

    )     }     l.Lock()     l.httpListener = httpListener     l.Unlock()     httpServer := newHTTPServe ...

  7. 十分钟学会Java8的lambda表达式和Stream API

    01:前言一直在用JDK8 ,却从未用过Stream,为了对数组或集合进行一些排序.过滤或数据处理,只会写for循环或者foreach,这就是我曾经的一个写照. 刚开始写写是打基础,但写的多了,各种乏 ...

  8. shell简明教程

    shell的格式 shell可以在直接在命令行下输入,也可以保存成shell脚本文件运行.当命令简单并且不需要重复使用,在命令行输入直接执行即可,否则就写成脚本.shell脚本默认文件扩展名为.sh. ...

  9. 这可能是史上最好的 Java8 新特性 Stream 流教程

    本文翻译自 https://winterbe.com/posts/2014/07/31/java8-stream-tutorial-examples/ 作者: @Winterbe 欢迎关注个人微信公众 ...

  10. Spring:(二)DI依赖注入方式

    DI 依赖注入 DI(Dependency Injection)依赖注入,说简单一点就将类里面的属性在创建类的过程中给属性赋值,即将对象依赖属性(简单值,集合,对象)通过配置设值给该对象. 属性注入的 ...