code: function memoize(regex, key, pattern, options) {
    define(regex, 'cached', true);
    define(regex, 'pattern', pattern);
    define(regex, 'options', options);
    define(regex, 'key', key);
    cache[key] = regex;
  }
docs: Memoize generated regex. This can result in dramatic speed improvements
  and simplify debugging by adding options and pattern to the regex. It can be
  disabled by passing setting `options.cache` to false.