golang判斷key是否在map中的代碼

個人常用函數

func IsContain(items []string, item string) bool {
 for _, eachItem := range items {
  if eachItem == item {
   return true
  }
 }
 return false
}

使用方法

var word := "my"
var sentence := []string{"my","word","in","a","sentence"}
if IsContain(sentence){
 //包含
 }else{
 //不包含
 }

補充:golang中的正則匹配&判斷元素是否在slice裡或者數組裡

1、正則匹配

package main 
import (
 "fmt"
 "regexp"
) 
func main() { 
    //pattern := "\\d+"     //反斜杠要轉義
 pattern := "[a-zA-Z]"   //匹配字母
 str := "a1.22.35.4"
 result, _ := regexp.MatchString(pattern, str)
 fmt.Println(result)   //true
}

2、判斷元素是否在slice裡或者數組裡

package main 
import "fmt" 
import "github.com/wxnacy/wgo/arrays" 
//go get github.com/wxnacy/wgo/arrays   安裝包 
func main() {
 str := "342"
 var numbers []string
 numbers = append(numbers, "3332", "342", "ssddd", "ssss", "%%%%") 
 index := arrays.ContainsString(numbers, str)
 if index == -1 {
  fmt.Printf("not exists") //-1說明不存在
 } else {
  fmt.Println(index) //存在則會返回元素的下標 
 }
}
 

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: