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

Golang:strings模块常用的字符串操作函数

文档

  • https://pkg.go.dev/strings

常用函数

函数名说明
ToUpper(s string) string转换为大写字母
ToLower(s string) string转换为小写字母
Count(s, sep string) int统计字符串出现的次数
Contains(s, substr string) bool是否包含子串
HasPrefix(s, prefix string) bool是否以子串开头
HasSuffix(s, suffix string) bool是否以子串结尾
Split(s, sep string) []string拆分字符串
Join(a []string, sep string) string合并字符串
ReplaceAll(s, old, new string) string字符串替换

示例

package main

import (
    "fmt"
    "strings"
)

func main() {
    str := "Hello World"

    // 转换为大写字母
    fmt.Println(strings.ToUpper(str))
    // HELLO WORLD

    // 转换为小写字母
    fmt.Println(strings.ToLower(str))
    // hello world

    // 统计字符串出现的次数
    fmt.Println(strings.Count(str, "o"))
    // 2

    // 是否包含子串
    fmt.Println(strings.Contains(str, "o"))
    // true

    // 是否以子串开头
    fmt.Println(strings.HasPrefix(str, "Hello"))
    // true

    // 是否以子串结尾
    fmt.Println(strings.HasSuffix(str, "Hello"))
    // false

    // 字符串的长度
    fmt.Println(len(str))
    // 11

    // 拆分字符串
    fmt.Printf("%q\n", strings.Split(str, " "))
    // ["Hello" "World"]

    // 合并字符串
    fmt.Println(strings.Join([]string{"Hello", "World"}, ","))
    // Hello,World

    // 字符串替换
    fmt.Println(strings.ReplaceAll(str, " ", "-"))
    // Hello-World
}

参考
「每周译Go」介绍 Go 中的 Strings 包

相关文章:

  • Kibana:使用新的 control 可视化 - 8.3
  • [Servlet 3]会话管理、进阶API、监听过滤器
  • springboot基于协同过滤算法的书籍推荐毕业设计源码101555
  • K-Means聚类算法
  • golang 切片(slice)简单使用
  • SQL Server Reporting Services
  • 加速迈入云原生时代,国产数据库行业要变天
  • PMP每日一练 | 考试不迷路-9.1(包含敏捷+多选)
  • 一体式城市内涝监测站
  • 【高等数学基础进阶】定积分应用
  • RabbitMQ基本使用一
  • CentOS 7.2 正确安装 MySQL 5.6.35
  • 计算机组成与设计-第五章 memory hierarchy(一)
  • 软考高级系统架构设计师系列论文二:论软件的性能优化设计
  • 【CircuitPython】RaspberryPi Pico RP2040 自定义机械键盘实例
  • [Vue CLI 3] 配置解析之 css.extract
  • “寒冬”下的金三银四跳槽季来了,帮你客观分析一下局面
  • Hibernate【inverse和cascade属性】知识要点
  • httpie使用详解
  • JavaScript设计模式与开发实践系列之策略模式
  • Making An Indicator With Pure CSS
  • Python实现BT种子转化为磁力链接【实战】
  • 基于Vue2全家桶的移动端AppDEMO实现
  • 爬虫模拟登陆 SegmentFault
  • 前端路由实现-history
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 前端设计模式
  • 浅谈web中前端模板引擎的使用
  • 世界上最简单的无等待算法(getAndIncrement)
  • 小程序button引导用户授权
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • ​queue --- 一个同步的队列类​
  • #define与typedef区别
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (2.2w字)前端单元测试之Jest详解篇
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (安卓)跳转应用市场APP详情页的方式
  • (八十八)VFL语言初步 - 实现布局
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • .apk文件,IIS不支持下载解决
  • .NET6 命令行启动及发布单个Exe文件
  • .NET构架之我见
  • .Net环境下的缓存技术介绍
  • .NET框架
  • .NET企业级应用架构设计系列之技术选型
  • /etc/fstab和/etc/mtab的区别
  • /proc/interrupts 和 /proc/stat 查看中断的情况
  • [Android] 修改设备访问权限
  • [Asp.net mvc]国际化