• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

用go语言怎么实现字符串比较

武飞扬头像
PHP中文网
帮助33

go语言比较字符串的方法:1、使用“==”运算符,语法“字符串1==字符串2”;2、使用strings包的ToLower()函数;3、使用strings包的Compare()函数,可按字典顺序比较两个字符串,语法“strings.Compare(str1,str2)”;4、使用strings包的EqualFold()函数,可忽略大小写的比较字符串,返回值为bool类型。

学新通技术网

方法1:使用“==”运算符(区分大小写)

package main

import "fmt"

func main() {
   fmt.Println("go"=="go")
   fmt.Println("GO"=="go")
}

输出:

true
false

方法2:使用strings.ToLower(不区分大小写)

package main

import (
    "fmt"
    "strings"
)

func main() {
    srcString := "This a string"
    destString := "this a string"

    if strings.ToLower(srcString) == strings.ToLower(destString) {
        fmt.Println("相等")
    } else {
        fmt.Println("不相等")
    }
}

输出:

相等

方法3:使用strings.Compare(区分大小写)

Compare()函数是Golang编程语言中的内置函数,用于比较两个字符串。它用于按字典顺序比较两个字符串(按字母顺序排列单词的顺序,类似于我们在字典中搜索单词的方式),或查找字符串是否相等。它返回一个整数值,如下所示:

func Compare(s1, s2 string) int
  • 如果字符串相等(s1 == s2),则返回0

  • 如果字符串1大于字符串2(s1> s2),则返回1。

  • 如果字符串1小于字符串2,则返回-1(s1 <s2)

示例:

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Compare("GO","go"))
    fmt.Println(strings.Compare("go","go"))
}

输出:

-1
0

Compare函数,区分大小写,比自建方法“==”的速度要快,下面是注释
/ Compare is included only for symmetry with package bytes.
// It is usually clearer and always faster to use the built-in
// string comparison operators ==, <, >, and so on.
func Compare(a, b string) int

方法4:使用strings.EqualFold(不区分大小写)

strings.EqualFold 是忽略大小写的比较,返回bool

package main

import (
    "fmt"
    "strings"
)

func main() {
   fmt.Println(strings.EqualFold("GO","go"))
   fmt.Println(strings.EqualFold("go","go"))
}

输出:

true
true

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tangbkghc
系列文章
更多 icon
同类精品
更多 icon
继续加载