Golang如何使用strings.Contains判断字符串包含_Golang strings包含判断方法

答案是使用 strings.Contains 函数可判断字符串是否包含子串,该函数区分大小写并返回布尔值。示例:strings.Contains("Hello", "He") 返回 true;空子串始终返回 true;忽略大小写时可用 strings.ToLower 转换后再比较,适合日常高效匹配。

在Golang中,判断一个字符串是否包含另一个子串是一个常见的操作。Go语言标准库 strings 提供了 strings.Contains 函数,可以方便地完成这一任务。

strings.Contains 函数简介

strings.Contains 用于判断一个字符串(主串)是否包含指定的子串。它返回一个布尔值:如果包含则返回 true,否则返回 false。

函数定义如下:

func Contains(s, substr string) bool

其中:

  • s:要搜索的原始字符串
  • substr:要查找的子字符串

基本用法示例

下面是一些使用 strings.Contains 的常见例子:

package main

import (
    "fmt"
    "strings"
)

func main() {
    text := "Hello, welcome to Go programming!"

    // 判断是否包含 "Go"
    if strings.Contains(text, "Go") {
        fmt.Println("文本包含 'Go'")
    }

    // 判断是否包含 "Python"
    if !strings.Contains(text, "Python") {
        fmt.Println("文本不包含 'Python'")
    }

    // 区分大小写
    fmt.Println(strings.Contains("Golang", "go")) // 输出: false
    fmt.Println(strings.Contains("Golang", "Go")) // 输出: true
}

注意事项

使用 strings.Contains 时需要注意以下几点:

  • 该函数是区分大小写的。如果需要忽略大小写判断,可先将字符串统一转为小写或大写再比较。
  • 空字符串作为子串时,Always returns true,因为任何字符串都包含空串。
  • 性能良好,适合大多数日常场景。

如需不区分大小写的匹配,可以这样处理:

strings.Contains(strings.ToLower("Hello World"), "hello") // true

基本上就这些。使用 strings.Contains 是判断字符串包含关系最直接、简洁的方法。