go语言比较字符串的方法:1、使用“==”运算符,语法“字符串1==字符串2”;2、使用“strings.ToLower()”函数;3、使用“strings.Compare()”函数;4、使用“strings.EqualFold()”函数。
本教程操作环境:windows10系统、GO 1.11.2、Dell G3电脑。
方法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(区分大小写)
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(不区分大小写)
package main import ( "fmt" "strings" ) func main() { fmt.Println(strings.EqualFold("GO","go")) fmt.Println(strings.EqualFold("go","go")) }
输出:
true true