@rux12/t_rex
v1.0.1
Published
DFA based regex engine in typescript from scratch (not for production).
Downloads
1
Readme
About The Project
I always wanted to know how Regular Expressions worked. That took me down this deep rabbit hole of Formal Grammar, Chomsky Hierarchy, Kleene Star and etc.
I also had been learning Haskell at the time and the concept of Finite State Machine came up time and again. It turns out I can utilize FSA to implement Regex Engines. So I did.
Getting Started
Install through your favorite package manager to get started.
Installation
npm install @rux12/t_rex
yarn add @rux12/t_rex
Usage
Basic Usage:
import {build} from "@rux12/t_rex";
const re = build("/(ab|cd)/");
re.matches("ab") // true
re.matches("cd") // true
re.matches("ef") // false
You could also use the builders provided.
import {char, or} from "@rux12/t_rex";
const re = or(
char("a"),
char("b")
);
re.matches("a") // true
re.matches("b") // true
re.matches("e") // false
Roadmap
- [ ] Add Wildcard Support (for now)
Contact
Email: [email protected]
Project Link: https://github.com/Sangi-it/t_rex