You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.1 KiB
41 lines
1.1 KiB
# regjsgen [![Build status][ci-img]][ci] [![Code coverage status][codecov-img]][codecov] |
|
|
|
Generate regular expressions from [regjsparser][regjsparser]’s AST. |
|
|
|
## Installation |
|
|
|
```sh |
|
npm i regjsgen |
|
``` |
|
|
|
## API |
|
|
|
### `regjsgen.generate(ast)` |
|
|
|
This function accepts an abstract syntax tree representing a regular expression (see [regjsparser][regjsparser]), and returns the generated regular expression string. |
|
|
|
```js |
|
const regjsparser = require('regjsparser'); |
|
const regjsgen = require('regjsgen'); |
|
|
|
// Generate an AST with `regjsparser`. |
|
let ast = regjsparser.parse(regex); |
|
|
|
// Modify AST |
|
// … |
|
|
|
// Generate `RegExp` string with `regjsgen`. |
|
let regex = regjsgen.generate(ast); |
|
``` |
|
|
|
## Support |
|
|
|
Tested in Node.js 10, 12, 14, and 16.<br> |
|
Compatible with regjsparser v0.7.0’s AST. |
|
|
|
|
|
[ci]: https://github.com/bnjmnt4n/regjsgen/actions |
|
[ci-img]: https://github.com/bnjmnt4n/regjsgen/workflows/Node.js%20CI/badge.svg |
|
[codecov]: https://codecov.io/gh/bnjmnt4n/regjsgen |
|
[codecov-img]: https://codecov.io/gh/bnjmnt4n/regjsgen/branch/master/graph/badge.svg |
|
[regjsparser]: https://github.com/jviereck/regjsparser
|
|
|