1.strings使用

前缀和后缀

HasPrefix判断字符串s是否以prefix开头:

示例:

package main
import (
"fmt"
"strings"
)
func main() {
pre := "Thi"
str1 := "This is a Go program!"
fmt.Println(strings.HasPrefix(str1, pre))
}

HasSuffix 判断字符串 s 是否以 suffix 结尾:

示例:

package main
import (
"fmt"
"strings"
)
func main() {
suffix := "am!"
str1 := "This is a Go program!"
fmt.Println(strings.HasSuffix(str1, suffix))
}

字符串包含关系

Contains 判断字符串 s 是否包含 substr :

strings.Contains(s string, substr string) bool

示例:

package main
import (
"fmt"
"strings"
)
func main() {
substr := "is"
str1 := "This is a Go program!"
fmt.Println(strings.Contains(str1, substr))
}

判断子字符串或字符在父字符串中出现的位置(索引)

Index 返回字符串 substr 在字符串 s 中的索引( substr 的第一个字符的索引),-1 表示字符串 s 不包含字符串 substr :

示例: 

package main
import (
"fmt"
"strings"
)
func main() {
substr := "is"
substr2 := "Hi"
str1 := "This is a Go program!"
fmt.Println(strings.Index(str1, substr)) //输出2
fmt.Println(strings.Index(str1, substr2))//输出-1
}

 

LastIndex 返回字符串 substr 在字符串 s 中最后出现位置的索引( substr 的第一个字符的索引),-1 表示

字符串 s 不包含字符串 substr :

strings.LastIndex(s string, substr string) int

示例:

package main
import (
"fmt"
"strings"
)
func main() {
substr := "is"
substr2 := "Hi"
str1 := "This is a Go program!"
fmt.Println(strings.LastIndex(str1, substr)) //输出5
fmt.Println(strings.LastIndex(str1, substr2))//输出-1
}

如果 r 是非 ASCII 编码的字符,建议使用以下函数来对字符进行定位:

strings.IndexRune(s string, r rune) int

示例:

package main
import (
"fmt"
"strings"
)
func main() {
substr := '中'
substr2 := '天'
str1 := "我爱你中国"
fmt.Println(strings.IndexRune(str1, substr)) //输出9
fmt.Println(strings.IndexRune(str1, substr2))//输出-1
}
package main
import (
"fmt"
"strings"
)
func main() {
substr := "中"
substr2 := "天"
str1 := "我爱你

(Go)07.Go语言中strings和strconv包示例代码详解01的更多相关文章

  1. (Go)07.Go语言中strings和strconv包示例代码详解02

    1.strings使用 统计字符串出现次数 strings.Count(s string, substr string) int Count 用于计算字符串 substr 在字符串 s 中出现的非重叠 ...

  2. Golang 字符串操作--使用strings、strconv包

    strings包 package main import ( "fmt" "strings" ) func main() { //func Count(s, s ...

  3. (Go)07.strings与strconv的示例

    package main import ( "strconv" "fmt" "strings" ) func main() { str := ...

  4. go语言中strings包常用方法

    strings.HasPrefix(s string, prefix string) bool:判断字符串s是否以prefix开头 strings.HasSuffix(s string, suffix ...

  5. go语言中strings包中的Trim函数的作用是什么

    答:Trim函数原型如下: func Trim(s string, cutset string) string 去掉字符串s中首部以及尾部与字符串cutset中每个相匹配的字符,如: s=" ...

  6. Go语言strings和strconv包

    目录 前缀和后缀 字符串包含关系 判断子字符串或字符在父字符串中出现的位置(索引) 字符串替换 统计字符串出现次数 重复字符串 修改字符串大小写 修剪字符串 分割字符串 拼接slice到字符串 从字符 ...

  7. C语言中,为什么字符串可以赋值给字符指针变量

    转载于:http://www.cnblogs.com/KingOfFreedom/archive/2012/12/07/2807223.html 本文是通过几篇转帖的文章整理而成的,内容稍有修改: 一 ...

  8. Go语言中的UDP应用

    Go语言中的UDP应用 Go语言中使用UDP是很方便的,net包提供了UDP和TCP的功能,这里使用UDP做了一个UDP广播,然后接收各个设备的返回信息.实现起来很快,总体感觉比使用C#中的UDP更优 ...

  9. C语言中,头文件和源文件的关系(转)

    简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句, ...

随机推荐

  1. IE bug集锦

    ie8 iframe 不显示 问题描述: IE8的非兼容模式下(兼容模式是ie7,不存在),iframe会不显示: 可以通过Ctrl+A全选或者是调整窗口大小显示出来. 解决办法: 这是由于要显示的i ...

  2. 【译】x86程序员手册20-6.3.4门描述符守卫程序入口

    6.3.4 Gate Descriptors Guard Procedure Entry Points 门描述符守卫程序入口 To provide protection for control tra ...

  3. (转)Arcgis for JS之Cluster聚类分析的实现

    http://blog.csdn.net/gisshixisheng/article/details/40711075 在做项目的时候,碰见了这样一个问题:给地图上标注点对象,数据是从数据库来的,包含 ...

  4. DDX DDV 用法

    DDX:Dialog Data Exchange 如果使用DDX机制,一般会在OnInitDialog消息处理函数或Dialog构造函数中,为对话框对象的成员变量设置了初始值.在对话框显示前,框架的D ...

  5. Day 13 进程和线程

    进程和线程 今天我们使用的计算机早已进入多CPU或多核时代,而我们使用的操作系统都是支持“多任务”的操作系统,这使得我们可以同时运行多个程序,也可以将一个程序分解为若干个相对独立的子任务,让多个子任务 ...

  6. react 父组件给子组件传值

    父组件 import React from 'react'import '../page1/header.css'import { Table } from 'antd'import Child fr ...

  7. Promise嵌套问题/async await执行顺序

    /* 原则: 执行完当前promise, 会把紧挨着的then放入microtask队尾, 链后面的第二个then暂不处理分析, */ 一. new Promise((resolve, reject) ...

  8. oracle的递归运算(树运算) 无限树形

    oracle的递归运算(树运算)start with org_id ='1'connect by prior parent_id=son_id 1.前言   oracle的递归运算,在我们web页面的 ...

  9. Python中的可迭代对象/迭代器/For循环工作机制/生成器

    本文分成6个部分: 1.iterable iterator区别 2.iterable的工作机制 3.iterator的工作机制 4.for循环的工作机制 5.generator的原理 6.总结 1.i ...

  10. Linux - redis-cluster搭建

    目录 Linux - redis-cluster搭建 Linux - redis-cluster搭建 1.准备6个数据库节点,也就是6个redis实例,也就是6个配置文件 配置文件如下 redis-7 ...