An NFA-based regex engine with a library and command-line tool.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Aadhavan Srinivasan 25cb79f01b Changed the value of EPSILON, so that we can use the NUL character
(which it used to be) in a regex; Also added code to detect escaped
backslashes

Specifically, I replace an escaped backslash with a metacharacter, then
replace it back later on. This prevents problems, like detecting whether
the opening bracket is escaped in '\\[a]'.
2 months ago
.gitignore Added gitignore 5 months ago
Makefile Disable compile-time optimization 5 months ago
compile.go Changed the value of EPSILON, so that we can use the NUL character 2 months ago
go.mod Updated go.mod 4 months ago
go.sum Print matched content in color 5 months ago
main.go Renamed function calls to use new names 2 months ago
matching.go Updated function names, addeed new function 'FindString' that returns the _text_ of the match 2 months ago
misc.go Added function to replace an element in a slice given its value 2 months ago
nfa.go Changed the value of EPSILON, so that we can use the NUL character 2 months ago
postfixNode.go Added a new class 'CHARCLASS', which represents a character class with some other postfixNodes in it. The 'except' field now contains a list of postfixNodes rather than runes 2 months ago
range2regex.go Added function (and helper functions) to generate a regex that matches all numbers in a range 3 months ago
re_test.go Started adding tests from Python's RE test suite 2 months ago
sliceQueue.go Added 'mustPop' function which panics if slice is empty 4 months ago
stateContents.go Got rid of function that I don't need anymore 4 months ago
todo.txt Updated TODO 2 months ago
unique_array.go Got rid of list for uniq_arr (O(n) deletion) and instead have separate method to create list (O(n) list creation) 4 months ago