code: function urlRegexp(url, keys, sensitive, strict) {
  	if (url.toString() === '[object RegExp]') { return url; }
  	if (Array.isArray(url)) { url = '(' + url.join('|') + ')'; }
  	url = url
  	.concat(strict ? '' : '/?')
  	.replace(/\/\(/g, '(?:/')
  		.replace(/(\/)?(\.)?:(\w+)(?:(\(.*?\)))?(\?)?(\*)?/g, function(
  			_, slash, format, key, capture, optional, star){
  				keys.push({ name: key, optional: !! optional });
  				slash = slash || '';
  				return '' +
  					(optional ? '' : slash) +
  					'(?:' +
  					(optional ? slash : '') +
  					(format || '') +
  					(capture || (format && '([^/.]+?)' || '([^/]+?)')) + ')' +
  					(optional || '') +
  					(star ? '(/*)?' : '');
  		})
  		.replace(/([\/.])/g, '\\$1')
  		.replace(/\*/g, '(.*)');
  
  	return new RegExp('^' + url + '$', sensitive ? '' : 'i');
  }
docs: PrivateFunction: urlRegexp
  Takes a route URL with possible placeholders like "/contacts/:contactid" and
  prepares a RegEx for later pattern matching when trying to resolve a route
  
  Thanks to:
  * https://github.com/visionmedia/express/blob/master/lib/utils.js#L277
  
  Parameters:
  (String) url - The url pattern to create the regex of
  (Array) keys - An array which will contain all identified placeholder
  names afterwards
  (Boolean) sensitive - Create Regex case sensitive?
  (Boolean) strict - Create Regex in strict mode?
  
  Returns:
  (Regexp)