| Leo Repp | 58b9f11 | 2021-11-22 11:57:47 +0100 | [diff] [blame^] | 1 | /** Used to match `RegExp` flags from their coerced string values. */ |
| 2 | var 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 | */ | ||||
| 11 | function cloneRegExp(regexp) { | ||||
| 12 | var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); | ||||
| 13 | result.lastIndex = regexp.lastIndex; | ||||
| 14 | return result; | ||||
| 15 | } | ||||
| 16 | |||||
| 17 | module.exports = cloneRegExp; | ||||