全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

如何使用Golang判断字符串包含关系_Golang strings Contains方法演示

strings.Contains 是 Go 中判断字符串是否包含子串的最直接高效方式,区分大小写,空串恒为 true,不支持正则,兼容 Unicode,性能优化良好。

在 Go 语言中,判断一个字符串是否包含另一个子串,最直接、高效的方式是使用 strings.Contains 函数。

strings.Contains 基本用法

该函数定义在 strings 包中,签名如下:

func Contains(s, substr string) bool

它接收两个字符串参数:主串 s 和待查找的子串 substr,返回 bool 类型结果,表示 substr 是否作为连续子序列出现在 s 中。

  • 区分大小写,比如 strings.Contains("Hello", "hello") 返回 false
  • 空字符串 "" 被认为包含在任意字符串中(包括空串),即 strings.Contains("abc", "") 返回 true
  • substrs 长,自动返回 false

简单示例代码

以下是一个可直接运行的小例子:

package main
import (
  "fmt"
  "strings"
)
func main() {
  s := "Go is simple and powerful"
  fmt.Println(strings.Contains(s, "simple"))  // true
  fmt.Println(strings.Contains(s, "Simple"))  // false(大小写敏感)
  fmt.Println(strings.Contains(s, ""))            // true
  fmt.Println(strings.Contains("", "a"))            // false
}

常见使用场景与注意事项

这个函数适合做快速存在性判断,比如配置检查、日志关键词过滤、URL 路径匹配等。

  • 不支持通配符或正则,如需模糊匹配请用 regexp
  • 若需获取子串位置,改用 strings.Index;若需统计出现次数,可用 strings.Count
  • 对中文、emoji 等 Unicode 字符完全兼容(Go 字符串天然以 UTF-8 存储)
  • 性能良好,底层做了优化,一般无需手动实现循环查找

替代方案简要对比

虽然 strings.Contains 是首选,但有时也会看到其他写法:

  • strings.Index(s, substr) != -1 —— 功能等价,但多了一次位置计算,稍低效
  • 手动遍历 rune 或 byte —— 容易出错且无必要,不推荐
  • 使用 strings.Fields + 循环 —— 仅适用于单词级匹配,且语义不同

基本上就这些。用好 strings.Contains 就能覆盖绝大多数“是否包含”的需求,简洁又可靠。


# go  # golang  # ai  # String  # count  # 字符串  # bool  # 循环  # regexp  # 性能优化  # 关键词  # 不支持  # 是一个  # 若需  # 也会  # 就能  # 出现在  # 遍历  # 适用于  # 可直接 


相关文章: c# await 一个已经完成的Task会发生什么  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  济南网站制作的价格,历城一职专官方网站?  如何在宝塔面板中创建新站点?  已有域名如何快速搭建专属网站?  如何用IIS7快速搭建并优化网站站点?  Android自定义listview布局实现上拉加载下拉刷新功能  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  如何零基础开发自助建站系统?完整教程解析  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  做企业网站制作流程,企业网站制作基本流程有哪些?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  如何高效搭建专业期货交易平台网站?  重庆网站制作公司哪家好,重庆中考招生办官方网站?  建站VPS推荐:2025年高性能服务器配置指南  如何高效利用亚马逊云主机搭建企业网站?  如何快速搭建二级域名独立网站?  高防服务器租用指南:配置选择与快速部署攻略  常州自助建站工具推荐:低成本搭建与模板选择技巧  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  自助网站制作软件,个人如何自助建网站?  全景视频制作网站有哪些,全景图怎么做成网页?  开封网站制作公司,网络用语开封是什么意思?  如何通过西部建站助手安装IIS服务器?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  魔方云NAT建站如何实现端口转发?  建站之星3.0如何解决常见操作问题?  高防服务器如何保障网站安全无虞?  建站之星各版本价格是多少?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  网站制作话术技巧,网站推广做的好怎么话术?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  手机网站制作与建设方案,手机网站如何建设?  安云自助建站系统如何快速提升SEO排名?  简单实现Android验证码  如何在香港免费服务器上快速搭建网站?  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  建站之星如何保障用户数据免受黑客入侵?  招贴海报怎么做,什么是海报招贴?  已有域名和空间,如何快速搭建网站?  建站之星代理商如何保障技术支持与售后服务?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  建站之星安装提示数据库无法连接如何解决?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。