Go 字符串函数详解(3) | 学习笔记

简介: 快速学习 Go 字符串函数详解(3)

开发者学堂课程【Go 语言核心编程 - 基础语法、数组、切片、Map: Go 字符串函数详解(3)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/625/detail/9617


Go 字符串函数详解(3)

一、编写代码

1. 将字符串左右两边的空格去掉:strings.TrimSpace(" tn a lone gopher ntrn”)

(1) 有个字符串”tn a lone gopher ntrn”,这个字符串的左边有个空格,右边有很多空格,在进行字符串处理的时候希望两边的空格去掉,可以用 TrimSpace 来处理。

(2) 代码案例:

package main

import (

"fmt"

)

func main(){

str = strings.Trimspace(" tn a lone gopher ntrn ")

fmt.Printf( "str=%v\n", str)

}

(3) 输出结果:

str=tn a lone gopher ntrn

(4) 代码分析:

真正处理完之后,原先的字符串没有变化,返回了一个处理过后新的字符串。如果要变的话,可以用原来的接收,但如果是个新串,就没有变化。处理完过后,两边的空格就没有了,输出结果两边的空格都没有了。假设如果将 fmt.Printf( "str=%vln", str)中的 v 改为 q,则输出的结果为“str=tn a lone gopher ntrn”

2. 将字符串左右两边指定的字符去掉:strings.Trim("! hello! "," !”)  // [""hello"] //将左右两边!和""去掉

(1) 代码案例:

package main

import (

"fmt"

)

func main(){

str = strings. Trim( " ! hello! ", ”!”)

fmt.Printf( "str=%q\n", str)

}

(2) 结果输出:

str=”!he!llo!”

(3) 代码分析:

str = strings. Trim( “ ! hello! “, “!”)把左右两边的空格和!全部去掉,后面的空格和!代表要去掉的,要去掉空格同时还要去掉!,中间的!去掉不了,只可以去左右两边的。Trim 之后原先的 ! hello! 是没有变化的,也是返回了一个新串。结果显示左右两边的去掉了,而中间的没有变化,假设把!拿掉,就相当于只去除左右两边的空格,前面的会被保留。

3. 将字符串左边指定的字符去掉:strings.TrimLeft(“! hello! “.” !”) // [“hello”] //将左边!和””去掉

只想去掉左边的字符,就把 Trim 改为 TrimLeft。Trim 与 TrimLeft 的用法都是相同的,只是 Trim 是去掉左右两边的字符,而 TrimLeft 是去掉指定字符左边的。

4. 将字符串右边指定的字符去掉: strings.TrimRight("! hello! ", " ! ") //  ["hello"] //将右边!和""去掉

十八和十九与上面的代码用法相同,相比于 17 一个是去掉左边的字符一个是去掉右边,TrimRight 是只去掉右边的指定字符。

5. 判断字符串是否以指定的字符串开头: strings.HasPrefix("ftp://192.168.10.1" ","ftp") // true

Prefix 是前缀的意思,如果是以特定字符串开头,就会返回 true

(1) 代码案例:

package main

import (

"fmt"

)

func main(){

b= strings.HasPrefix("ftp: //192.168.10.1","ftp")// true

fmt.Printf("b=%v\n",b)

(2) 结果输出:

b=true

(3) 代码分析:

判断ftp: //192.168.10.1 这个字符串是不是以 ftp 开头的,用 b 接收,返回的true。如果将 ftp 改成 hsp,则结果输出的是 false,这是 HasPrefix 的使用规则。

6. 判断字符串是否以指定的字符串结束:

strings.HasSuffix("NLT_abc.jpg", "abc")//false

HasSuffix 是后缀的意思,21 的代码用法与 20 的相同,只是 21 的是判断字符串是否以特定的字符串结尾。

关于 golang 中常用的函数就这 21 个,需要掌握,在做项目的时候,会经常用到这 21 个常用的函数

相关文章
|
监控 安全 Java
Go语言学习笔记(一)
Go语言学习笔记(一)
163 1
Go语言的条件控制语句及循环语句的学习笔记
本文是Go语言的条件控制语句和循环语句的学习笔记,涵盖了if语句、if-else语句、if嵌套语句、switch语句、select语句以及for循环和相关循环控制语句的使用方法。
Go语言的条件控制语句及循环语句的学习笔记
Go: struct 结构体类型和指针【学习笔记记录】
本文是Go语言中struct结构体类型和指针的学习笔记,包括结构体的定义、成员访问、使用匿名字段,以及指针变量的声明使用、指针数组定义使用和函数传参修改值的方法。
|
人工智能 算法 搜索推荐
Go学习笔记-代码调
近年来,人工智能技术飞速发展,Cody作为由Sourcegraph开发的一款AI驱动编码助手,应运而生。它不仅提供代码预测与补全,还能深度理解代码上下文,为开发者提供准确建议,提升编码效率和质量。Cody能识别潜在错误并提出修复建议,缩短调试时间,同时进行智能代码审查,帮助优化代码结构和风格。未来,随着AI技术进步,Cody将不断学习优化,成为开发者不可或缺的伙伴,推动编程领域的创新与发展。
97 0
|
存储 分布式计算 算法
GO学习笔记之表达式
GO学习笔记之表达式
167 1
|
存储 编译器 Go
GO语言学习笔记
GO语言学习笔记
75 1
|
Go 自然语言处理 编译器
Go 学习笔记-Go 词法解析
Go 学习笔记-Go 词法解析
147 0
Go 学习笔记-Go 词法解析
|
自然语言处理 前端开发 Java
Go 学习笔记-Go 编译器简介
Go 学习笔记-Go 编译器简介
132 0
|
自然语言处理 算法 Java
Go学习笔记-Go编译器简介
Go学习笔记-Go编译器简介
168 0
|
存储 Go
Go学习笔记-Go 浮点数设计原理
Go学习笔记-Go 浮点数设计原理
214 0