UNPKG

439 BJavaScriptView Raw
1/** Used to match `RegExp` flags from their coerced string values. */
2var reFlags = /\w*$/;
3
4/**
5 * Creates a clone of `regexp`.
6 *
7 * @private
8 * @param {Object} regexp The regexp to clone.
9 * @returns {Object} Returns the cloned regexp.
10 */
11function cloneRegExp(regexp) {
12 var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
13 result.lastIndex = regexp.lastIndex;
14 return result;
15}
16
17module.exports = cloneRegExp;