Table of Contents
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.
Install through your favorite package manager to get started.
npm install @rux12/t_rex
yarn add @rux12/t_rex
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
- Add Wildcard Support (for now)
Email: rux12@icloud.com
Project Link: https://github.com/Sangi-it/t_rex