标准库之strings

1|0一、strings库介绍

  • 标准库strings用于处理utf-8编码的字符串,字符串的操作,通过该标准库

2|0二、字符串比较-Compare

2|11. 介绍

func Compare(a,b string) int
  • 若 a==b ,则返回0;若 a <b ,则返回 -1;若 a>b ,则返回 1。
  • 字符串的比较方法是根据单个字符的ASCII编码。

2|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "hello" var str2 string = "world" fmt.Println(strings.Compare(str1,str2)) // -1 fmt.Println(strings.Compare(str2,str1)) // 1 fmt.Println(strings.Compare(str1,str1)) // 0 }

3|0三、检测字符串是否包含子串-Contains

3|11. 介绍

func Contains(s,substr string) bool

3|22. 示例

package main import ( "fmt" "strings" ) func main() { fmt.Println(strings.Contains("lqz is nb","lqz")) // true fmt.Println(strings.Contains("lqz is nb","pyy")) // false }

4|0四、大小写转换

4|11. 介绍

func ToUpper(substr string) string func ToLower(substr string) string func ToTitle(substr string) string //将字符修改为其Title格式,大部分字符的Title格式就是Upper格式,只有少数字符的Title格式是特殊字符

4|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "hello,lqz" fmt.Println(strings.ToUpper(str1)) // HELLO, GOLANG fmt.Println(strings.ToLower(str1)) // hello, golang fmt.Println(strings.ToTitle(str1)) // HELLO, GOLANG }

5|0五、统计子字符串出现的次数

5|11. 介绍

func Count(str,substr string) int

5|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "lqz is Nb, lqz is big,lqz is handsome" var str2 string = "lqz" fmt.Println(strings.Count(str1,str2)) //3 }

6|0六、判断字符串的前后缀

6|11. 介绍

func HasPrefix(str,substr string) bool func HasSuffix(str,substr string) bool

6|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "lqz is handsome" var str2 string = "l" var str3 string = "lqz" var str4 string = "lqzi" fmt.Println(strings.HasPrefix(str1, str2)) // true fmt.Println(strings.HasPrefix(str1, str3)) // ture fmt.Println(strings.HasSuffix(str1, str4)) // false }

7|0七、分割和连接

7|11. 介绍

func Split(str,separator string) []string func Join(strs []string) string

7|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "lqz is Nb,lqz is handsome" fmt.Println(strings.Split(str1, ",")) // [lqz is Nb lqz is handsome] for _,v := range strings.Split(str1, ",") { fmt.Println(v) } fmt.Println(strings.Join([]string{"lqz","is","NB"}, " ")) // lqz is NB }

8|0八、索引

8|11. 介绍

  • 这个操作能获取指定字符首次出现的位置,通常用来判断子字符串在对应字符串中的位置。
func Index(str,substr string) int

8|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "lqz is Nb" fmt.Println(strings.Index(str1, "Nb")) // 7 }

9|0九、清洗

9|11. 介绍

  • 清洗操作可以将字符串两端的一些字符删掉,常用来删除字符串两端的空格。
func Trim(s, cutset string) string func TrimLeft(s, cutset string) string func TrimRight(s, cutset string) string func TrimPrefix(s, prefix string) string func TrimSuffix(s, suffix string) string func TrimSpace(str string) string

9|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = " lqz is Nb " var str2 string = "***lqz is Nb***" fmt.Println(strings.Trim(str1, " ")) // lqz is Nb fmt.Println(strings.Trim(str2, "*")) //lqz is Nb // 专门用来清除两端空格的函数 fmt.Println(strings.TrimSpace(str1)) // lqz is Nb fmt.Println(strings.TrimRight(str1," ")) // lqz is Nb }

10|0十、替换

10|11. 介绍

  • 清洗操作只能完成首尾的空格或者指定字符的替换,要完成更为复杂的操作则要调用NewReplacer()函数。
func Replace(s, old, new string, n int) string {} func NewReplacer(oldnew ...string) *Replacer

10|22. 示例

package main import ( "fmt" "strings" ) func main() { var str1 string = "www.cnblogs.com/liuqingzheng/p/15996060.html" newReplacer1 := strings.NewReplacer("/",":") fmt.Println(newReplacer1.Replace(str1)) //www.cnblogs.com:liuqingzheng:p:15996060.html }

__EOF__

本文作者BigSun丶
本文链接https://www.cnblogs.com/Mcoming/p/18073091.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   BigSun丶  阅读(32)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示