Regex Processor is a regular expression interpreter written in Racket. This project includes a compiler, lexer, parser, virtual machine, and supporting tools to parse and evaluate regular expressions.
- Regex Compilation: Converts regular expressions into an intermediate representation.
- Lexical and Syntactic Analysis: Processes input using
lexer.rktandparser.rkt. - Custom Virtual Machine: Executes compiled regular expressions against input strings.
- Regex Derivation: Implements algorithms for expression derivation and simplification.
- Integrated Tests: Includes test cases to validate components and behavior.
compiler.rkt: Handles the compilation of regular expressions.lexer.rkt: Performs lexical analysis.parser.rkt: Parses the regular expressions.vm.rkt: Defines the virtual machine for executing expressions.derivate.rkt: Contains functions for expression derivation.main.rkt: Main entry point of the application.tests/: Directory containing test files.
- Racket must be installed on your system.
-
Clone the repository:
git clone https://github.com/daher13/regex-processor.git cd regex-processor