为了账号安全,请及时绑定邮箱和手机立即绑定

strings.Contains() 总是返回 false

strings.Contains() 总是返回 false

Go
拉莫斯之舞 2022-06-06 14:39:08
在 Go 中,我想检查以下字符串是否包含text/plain在字符串中。函数strings.Contains()总是返回false。我的本地 go 版本是go1.14.3 windows/amd64,我的服务器版本是go1.13.3 linux/amd64测试代码(play.golang.org/p/_ikCzWd6438)var test = "text/plain; charset=utf-8"fmt.Println("my string:", test)fmt.Println("strings.Contains(text/plain)", strings.Contains("text/plain", test))fmt.Println("strings.Contains(text)", strings.Contains("text", test))fmt.Println("strings.Contains(charset)", strings.Contains("charset", test))var test2 = strings.ReplaceAll(test, "/", "") // remove slashfmt.Println("my second string:", test2)fmt.Println("strings.Contains(textplain)", strings.Contains("textplain", test2))fmt.Println("strings.Contains(text)", strings.Contains("text", test2))fmt.Println("strings.Contains(charset)", strings.Contains("charset", test2))输出my string: text/plain; charset=utf-8strings.Contains(text/plain) falsestrings.Contains(text) falsestrings.Contains(charset) falsemy second string: textplain; charset=utf-8strings.Contains(textplain) falsestrings.Contains(text) falsestrings.Contains(charset) false那么为什么strings.Contains()总是返回'false'?
查看完整描述

1 回答

?
慕哥6287543

TA贡献1831条经验 获得超10个赞

根据文档

func Contains(s, substr string) bool

包含报告 substr 是否在 s 内。

第一个参数s是原始字符串,第二个参数是substr您要搜索的子字符串。在你的情况下,情况正好相反。

例如,而不是strings.Contains("charset", test),它应该是strings.Contains(test, "charset")


查看完整回答
反对 回复 2022-06-06
  • 1 回答
  • 0 关注
  • 272 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信