module AbstractController::Caching::Fragments

def expire_fragment(key, options = nil)

method (or delete_matched, for Regexp keys).
+options+ is passed through to the cache store's +delete+

memcached).
only supported on caches that can iterate over all keys (unlike
./cache/filename/path.cache. Note: Regexp expiration is
the actual filename matched looks like
don't use anchors in the regex (^ or $) because
%r{pages/\d*/notes} might remove all notes. Make sure you
* Regexp - Will remove any fragment that matches, so
{ controller: 'pages', action: 'notes', id: 45}
* Hash - Treated as an implicit call to +url_for+, like
pages/45/notes.
* String - This would normally take the form of a path, like

+key+ can take one of three forms:

Removes fragments from the cache.
def expire_fragment(key, options = nil)
  return unless cache_configured?
  key = combined_fragment_cache_key(key) unless key.is_a?(Regexp)
  instrument_fragment_cache :expire_fragment, key do
    if key.is_a?(Regexp)
      cache_store.delete_matched(key, options)
    else
      cache_store.delete(key, options)
    end
  end
end