human2regex
TypeScript icon, indicating that this package has built-in type declarations

1.2.2 • Public • Published

Human2Regex

H2R logo

Build Status Codecov LGTM Grade GitHub npm

Website Docs Docs

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

Tutorial

The language tutorial can be found at https://human2regex.com/tutorial.html

API

Human2Regex is available as an embeddable API.

The API reference is available here

Usage (API)

  1. Install

     npm i human2regex
    
  2. Read the API docs

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

Package Sidebar

Install

npm i human2regex

Weekly Downloads

8

Version

1.2.2

License

MIT

Unpacked Size

143 kB

Total Files

18

Last publish

Collaborators

  • pdemian