Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/babel/regjsgen
Generate regular expressions from regjsparser’s AST.
https://github.com/babel/regjsgen
Last synced: 3 months ago
JSON representation
Generate regular expressions from regjsparser’s AST.
- Host: GitHub
- URL: https://github.com/babel/regjsgen
- Owner: babel
- License: mit
- Fork: true (bnjmnt4n/regjsgen)
- Created: 2023-01-25T11:12:40.000Z (almost 2 years ago)
- Default Branch: fork
- Last Pushed: 2023-01-25T12:04:35.000Z (almost 2 years ago)
- Last Synced: 2024-05-22T15:11:01.868Z (8 months ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/regjsgen
- Size: 1.2 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-MIT.txt
Awesome Lists containing this project
README
# regjsgen [![Build status][ci-img]][ci] [![Code coverage status][codecov-img]][codecov]
> This is a fork of [bnjmnt4n/regjsgen](https://github.com/bnjmnt4n/regjsgen) with some additional patches. The end goal is to merge these patches upstream.
> - [be866435](https://github.com/babel/regjsgen/commit/be86643508658c70ccb5bec8bc4e3dc2479cac62) _feat: support modifiers proposal_ ([bnjmnt4n/regjsgen#28](https://github.com/bnjmnt4n/regjsgen/pull/28))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 on Node.js 16 and 18.
Compatible with regjsparser v0.10.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/main/graph/badge.svg
[regjsparser]: https://github.com/jviereck/regjsparser