diff --git a/get_with_prefix_pattern.go b/get_with_prefix_pattern.go new file mode 100644 index 0000000..11b03b6 --- /dev/null +++ b/get_with_prefix_pattern.go @@ -0,0 +1,33 @@ +package redisdb + +import "context" + +// GetWithPrefixPattern ... +func GetWithPrefixPattern(pattern string, limit int64) (keys []string, values []string) { + // Init + keys = make([]string, 0) + values = make([]string, 0) + + var ( + ctx = context.Background() + cursor uint64 + err error + ) + + keys, cursor, err = rdb.Scan(ctx, cursor, pattern, limit).Result() + if err != nil { + return + } + + if len(keys) == 0 { + return + } + + // Get value + for _, key := range keys { + value := GetValueByKey(ctx, key) + values = append(values, value) + } + + return +}