diff options
| author | Akshay Nair <phenax5@gmail.com> | 2022-02-17 21:43:14 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2022-02-17 21:43:14 +0530 |
| commit | d43d9e5933b1bc92e362321b054c951a4a4b000f (patch) | |
| tree | 9ae9898e38da8647d3fefa71f213083862f3b6e3 | |
| parent | 8de4bd6d732c3490a7d7a3d7433d8974b8592895 (diff) | |
| download | elxr-d43d9e5933b1bc92e362321b054c951a4a4b000f.tar.gz elxr-d43d9e5933b1bc92e362321b054c951a4a4b000f.zip | |
docs: adds replaceAll example
| -rw-r--r-- | README.md | 14 | ||||
| -rw-r--r-- | tests/replace.spec.ts | 9 |
2 files changed, 23 insertions, 0 deletions
@@ -36,6 +36,9 @@ Whitespaces are ignored (except within literals) ### Examples + +#### matchAll + ```js // | Match for any number or any non-empty string or any object with `prop` is true matchAll(/ \n | \s\T /, [null, 23, '', 'wow', false ] @@ -81,3 +84,14 @@ matchAll(/ [seperator true], [id \s\T]+ /, [ // } ``` + +#### replaceAll + +```js +// | Match for any number or any non-empty string or any object with `prop` is true +const replacer = (_, matches) => matches.value.reduce((a, b) => a + b, 0) +replaceAll(/ \n+ /, replacer, [ 'start', 3, 5, 'mid', 2, 0, 4, 'end' ]) + +// > [ 'start', 8, 'mid', 6, 'end' ] +``` + diff --git a/tests/replace.spec.ts b/tests/replace.spec.ts index dd82eaa..98f1540 100644 --- a/tests/replace.spec.ts +++ b/tests/replace.spec.ts @@ -3,6 +3,15 @@ import { replaceAll } from '../src' describe('Basic tests', () => { it('should', () => { + const replacer = (_, matches) => [matches.value.reduce((a, b) => a + b, 0)] + expect(replaceAll(/ \n+ /, replacer, ['start', 3, 5, 'mid', 2, 0, 4, 'end'])).toEqual([ + 'start', + 8, + 'mid', + 6, + 'end', + ]) + expect( replaceAll(/"start", \s, \n/, _ => ['replaced'], [ 1, |
