当前位置: 首页 > news >正文

Go基础:字符串常用的系统函数及对应案例详解

更多内容请见: 100天Go语言从入门到精通系列-专栏介绍和目录

文章目录

    • 一、Go 中的字符串
    • 二、字符串常用的系统函数及案例
      • 2.1 字符串长度与遍历
        • 1、len(string)
        • 2、strings.Count(s, substr) int
        • 3、utf8.RuneCountInString(string)
        • 4、for...range 遍历
      • 2.2 字符串查找与判断
        • 1、strings.Contains(s, substr) bool
        • 2、strings.HasPrefix(s, prefix) bool` / `strings.HasSuffix(s, suffix) bool
        • 3、strings.Index(s, substr) int` / `strings.LastIndex(s, substr) int
      • 2.3 字符串转换与修改
        • 1、strings.ToLower(s) string` / `strings.ToUpper(s) string
        • 2、strings.Replace(s, old, new string, n int) string
        • 3、strings.TrimSpace(s) string
        • 4、[]byte(s)` 和 `string(b)
      • 2.4 字符串分割与连接
        • 1、strings.Split(s, sep) []string
        • 2、strings.Join(elems []string, sep) string
        • 3、strings.SplitN(s, sep, n) []string
        • 4、strings.Trim(s, cutset) string
        • 5、strings.TrimLeft(s, cutset) string` / `strings.TrimRight(s, cutset) string
        • 6、strings.TrimPrefix(s, prefix) string` / `strings.TrimSuffix(s, suffix) string
        • 7、strings.Fields(s) []string
      • 2.5 字符串重复与比较
        • 1、strings.Repeat(s, count int) string
        • 2、strings.Compare(a, b string) int

一、Go 中的字符串

在开始之前,必须理解 Go 语言字符串的两个核心特性:

  1. 不可变性:Go 的字符串在创建后是不可变的。任何试图修改字符串的操作,实际上都会创建一个新的字符串。这保证了字符串的并发安全。
  2. UTF-8 编码:Go 的字符串是 UTF-8 编码的字节序列。这意味着一个英文字符占 1 个字节,一个中文字符通常占 3 个字节。在处理多语言字符时,需要特别注意这一点,直接按字节操作可能会出错。

二、字符串常用的系统函数及案例

2.1 字符串长度与遍历

1、len(string)
  • 功能:返回字符串的字节长度(int 类型)。
  • 注意:它计算的是字节数,不是字符数。对于纯 ASCII 字符串,字节数等于字符数;对于包含中文等多字节字符的字符串,字节数会大于字符数。

案例:

package main
import 
http://www.dtcms.com/a/585383.html

相关文章:

  • redis查询速度快的原因?
  • 社区类网站开发网站怎么提升流量
  • 注册网站时手机号格式不正确容易做的html5的网站
  • 如何查询哪些服务器 IP 访问了 Google Cloud 的 Vertex AI API
  • DataWhale-HelloAgents(第一部分:智能体与语言模型基础)
  • Ollama:在本地运行大语言模型的利器
  • 构建智能知识库问答助手:LangChain与大语言模型的深度融合实践
  • 大语言模型如何获得符号逻辑演绎能力?从频率范式到贝叶斯范式的转移
  • 网站建设中的功能新浪微博图床wordpress
  • 【玩泰山派】9、ubuntu22.04安装中文输入法
  • Spring IOC/DI 与 MVC 从入门到实战
  • SCNet超算平台DCU异构环境的Ollama启动服务后无法转发公网的问题解决
  • macOS下如何全文检索epub格式文件?
  • 一键配置 macOS 终极终端:iTerm2 + Oh My Zsh 自动化安装脚本
  • 如何在 Mac、Ubuntu、CentOS、Windows 上安装 MySQL 客户端
  • 石景山广州网站建设外贸soho建站多少钱
  • 某观鸟记录中心的爬虫——mitmproxy的简单使用
  • 58同城上海网站建设北京朝阳区房价
  • 金融网络销售怎么找客源公司网站做优化少钱
  • 代码随想录 Q84.分发饼干
  • 11.8 脚本网页 打砖块max
  • 终极笔记应用程序Alexandrie
  • 「嵌」入未来,「式」界无限 · 第5篇:能源电力的智能化跃迁
  • 自动化实践(7.25):把 PsTools 接入 PowerShell / 批处理 / Ansible
  • 太原在线网站建设深圳网站关键词优化
  • AWS Lambda的安全之道:S3静态加密与运行时完整性检查的双重保障
  • 时序数据库选型指南从大数据视角看IoTDB的核心优势
  • 长沙网站建站模板创免费网站
  • dede 门户网站长春建站网站建设
  • Android Hilt 入门教程_传统写法和Hilt写法的比较