This commit is contained in:
兔子
2023-05-29 15:55:34 +08:00
parent a17e83b041
commit f4cc663a51
2 changed files with 32 additions and 1 deletions

View File

@@ -31,3 +31,32 @@ func UnityIds(param ...any) (ids []any) {
return ArrayUnique(ArrayEmpty(ids))
}
// UnityKeys 参数归一化
func UnityKeys(param any, reg ...any) (keys []any) {
// 正则表达式
var regex string
if len(reg) > 0 {
regex = cast.ToString(reg[0])
} else {
regex = `[^,]+`
}
if GetType(param) == "string" {
item := regexp.MustCompile(regex).FindAllString(cast.ToString(param), -1)
for _, val := range item {
keys = append(keys, val)
}
}
if GetType(param) == "slice" {
item := cast.ToStringSlice(param)
for _, val := range item {
keys = append(keys, val)
}
}
return ArrayUnique(ArrayEmpty(keys))
}