code: function extract (/* pattern, ...args */) {
      var args = slice.call(arguments, 1);
      var context = this === exports ? null : this;
      var patternFn = getOrCompile(arguments[0]);
      return patternFn.call(context, args, runtime) || null;
    }
docs: Extract works similar to regular expression matching on strings. If the pattern fails to match, it returns null. If it is successful it will return an array of extracted values.