blob: 4a16bad3da8b4f624b5e1dd72f2fa6968118d7f9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#regexp-clone
==============
Clones RegExps with flag and `lastIndex` preservation.
```js
const regexpClone = require('regexp-clone');
const a = /somethin/misguy;
console.log(a.global); // true
console.log(a.ignoreCase); // true
console.log(a.multiline); // true
console.log(a.dotAll); // true
console.log(a.unicode); // true
console.log(a.sticky); // true
const b = regexpClone(a);
console.log(b.global); // true
console.log(b.ignoreCase); // true
console.log(b.multiline); // true
console.log(b.dotAll); // true
console.log(b.unicode); // true
console.log(b.sticky); // true
const c = /hi/g;
c.test('this string hi there');
assert.strictEqual(c.lastIndex, 3);
const d = regexpClone(c);
assert.strictEqual(d.lastIndex, 3);
d.test('this string hi there');
assert.strictEqual(d.lastIndex, 14);
assert.strictEqual(c.lastIndex, 3);
```
```
npm install regexp-clone
```
## License
[MIT](https://github.com/aheckmann/regexp-clone/blob/master/LICENSE)
|