package utils import "strings" // ArrayInString 判断字符串是否存在于字符串切片中 // target: 待匹配的目标字符串 // array: 需要查找的字符串切片 func ArrayInString(target string, array []string) bool { target = strings.TrimSpace(target) for _, v := range array { if strings.TrimSpace(v) == target { return true } } return false } // ArrayInInt 判断整数是否存在于整型切片中 // target: 待匹配的目标整数 // array: 需要查找的整型切片 func ArrayInInt(target int, array []int) bool { for _, v := range array { if v == target { return true } } return false } // ArrayRemoveRepeatString 去除字符串切片中的重复元素(保持原有顺序) // in: 原始字符串切片 // 返回: 去重后的字符串切片 func ArrayRemoveRepeatString(in []string) (out []string) { seen := make(map[string]struct{}) for _, v := range in { trimmed := strings.TrimSpace(v) if trimmed == "" { continue } if _, ok := seen[trimmed]; ok { continue } seen[trimmed] = struct{}{} out = append(out, trimmed) } return out } // ArrayRemoveRepeatInt 去除整型切片中的重复元素(保持原有顺序) // in: 原始整型切片 // 返回: 去重后的整型切片 func ArrayRemoveRepeatInt(in []int) (out []int) { seen := make(map[int]struct{}) for _, v := range in { if _, ok := seen[v]; ok { continue } seen[v] = struct{}{} out = append(out, v) } return out }