1
0
mirror of https://github.com/pdemian/human2regex.git synced 2025-05-16 12:30:09 -07:00
human2regex/Readme.md
Patrick Demian 8724201922
Fixed readme
2021-01-17 05:25:56 -05:00

88 lines
2.6 KiB
Markdown

# Human2Regex
<div align="center">
![H2R logo](./src/docs/assets/favicon-small.png)
[![Build Status](https://travis-ci.org/pdemian/human2regex.svg?branch=master)](https://travis-ci.org/pdemian/human2regex)
[![Codecov](https://codecov.io/gh/pdemian/human2regex/branch/master/graphs/badge.svg?branch=master)](https://codecov.io/gh/pdemian/human2regex)
[![LGTM Grade](https://img.shields.io/lgtm/grade/javascript/github/pdemian/human2regex)](https://lgtm.com/projects/g/pdemian/human2regex/)
![GitHub](https://img.shields.io/github/license/pdemian/human2regex)
[![npm](https://img.shields.io/npm/v/human2regex?color=green)](https://www.npmjs.com/package/human2regex)
[![Website](https://img.shields.io/badge/website-human2regex.com-blue)](https://human2regex.com)
[![Docs](https://img.shields.io/badge/docs-API-blue)](API.md)
[![Docs](https://img.shields.io/badge/docs-language-blue)](https://human2regex.com/tutorial.html)
</div>
## Purpose
Generate regular expressions from natural language.
Instead of a convoluted mess of symbols like `/([\w\.=\-]*\w+)/g` why not
using global matching
create a group
match 0+ characters or "." or "=" or "-"
match 1+ words
Which would you rather modify or debug?
You can then use your regex in your language of choice, with Human2Regex validating your regex for you.
## Why use Human2Regex?
- Human readable
- Easier to prototype and modify when compared to regex
- Easier to debug than raw text or even color coded regex
- "Human Speak" may contain comments
- Multiple platforms' dialects/quirks supported
- Human2Regex will minimize your final regex
- "Human Speak" can be used by non-technical QA to verify your program's output
## Webpage
Human2Regex is hosted on github pages at [https://human2regex.com](https://human2regex.com)
## Tutorial
The language tutorial can be found at [https://human2regex.com/tutorial.html](https://human2regex.com/tutorial.html)
## API
Human2Regex is available as an embeddable API.
The API reference is available [here](API.md)
## Usage (API)
1) Install
npm i human2regex
2) [Read the API docs](API.md)
## Usage (This repo)
1) Prebuild
npm install
2) Build
npm run build
3) Run
point web browser to: docs/index.html
4) Test
npm t
## Todo
- Add more regex options such as subroutines, ~~conditions, and lookahead/behind~~
- Fix error messages (They sometimes point to the wrong location, off by 1 errors, etc)
- Add more useful lex/parse errors (What even is an EarlyExitException?)
- ~~Use a different/better static site generation method~~