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. centos6.9 升级内核版本

    想在centos6.9上安装docket,不过因为内核版本是2.6的故而想升级到最新的内核版本 晚上有编译升级的比较麻烦,不过有助于理解内核升级,我使用的直接升级到最新版方法 1. 导入public ...

  2. Java中能否利用函数参数来返回值

    转自https://blog.csdn.net/da_da_xiong/article/details/70039532 我们在写代码时通常会遇到一种情况,就是我们可能希望在一个函数操作完成后返回两个 ...

  3. 在docker上运行.net core程序

    一.安装docker及镜像 1.在centos上安装docker,命令如下: # yum install docker 2.让docker随机启动: # service docker start# c ...

  4. bzoj 1076 奖励关 状压+期望dp

    因为每次选择都是有后效性的,直接dp肯定不行,所以需要逆推. f[i][j]表示从第i次开始,初始状态为j的期望收益 #include<cstdio> #include<cstrin ...

  5. 【小白学C#】浅谈.NET中的IL代码

    一.前言 前几天群里有位水友提问:”C#中,当一个方法所传入的参数是一个静态字段的时候,程序是直接到静态字段拿数据还是从复制的函数栈中拿数据“.其实很明显,这和方法参数的传递方式有关,如果是引用传递的 ...

  6. nginx+php安装

    1.环境概述 虚拟机系统:CentOS Linux release 7.3.1611 (Core) 宿主机系统:Mac Sierra version 10.12.3 nginx:1.10.3 php: ...

  7. 遍历数组 foreach

    package com.java.array; public class Myforeach { public static void main(String[] ARGS){ /* int arr[ ...

  8. ActiveMQ详解

    Apache ActiveMQ介绍 使用MQ的场景 ActiveMQ的安装 收发消息的简单实现 ActiveMQ内部实现 queue和topic 消息持久化 kahadb原理 最关键的6个配置 Apa ...

  9. 利用face_recognition库裁取人脸

    from PIL import Image import face_recognition # Load the jpg file into a numpy array image = face_re ...

  10. Discuz3.4-SSRF-从触发点到构造payload

    目录 SSRF逆向分析 0x00 前言 0x01 收集情报 0x02 尝试逆向找到触发点 0x03 尝试构造payload 0x04 总结 SSRF逆向分析 0x00 前言 之前有复现过一些漏洞,但是 ...