Caching of popular content during off-peak hours is a strategy to reduce the network load during peak hours. We consider a model where multiple caches store pre-fetched content and when users request files, they are matched to caches based on the request pattern. In particular, we focus on the case where caches are divided into clusters and each user can only be assigned to a unique cache from a specific cluster. This is a generalization of two popular models which are the extremes of the proposed model: one where each user is pre-attached to a cache irrespective of what it demands (static matching) and the other where each user can be assigned to any cache in the entire network (fully adaptive matching). We show that neither the coded delivery strategy (approximately optimal when the user-cache assignment is pre-fixed) nor the uncoded replication strategy (approximately optimal when all caches belong to a single cluster) is sufficient for all memory regimes. We propose a hybrid solution that combines ideas from both schemes and that performs strictly better than both. Finally, we show that this hybrid strategy is approximately optimal in most memory regimes.