Skip to content

University course project on Data Structures and Algorithms

Notifications You must be signed in to change notification settings

solatar/RegexToNfa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RegexToNfa Application

University course project on Data Structures and Algorithms.

The app takes a regular expression and a string as input, builds an NFA fron the regex and checks whether it accepts the string.

The application uses Shunting-Yard and Thompson's construction algorithms. Due to the nature of the latter, the app adds character '.' between concatenated characters. For example, (a|b|c)*abc becomes (a|b|c)*.a.b.c. User may enter their regex in regular form. Parentheses are used for grouping characters but they are dropped when regex is converted into postfix form.

Currently the app supports these regular expression operations (in the order of precedence): . for concatenation, | for alternation * for closure (zero or more) and + for one or more.

Requirements specification

User Manual

Implementation report

Testing report

Weekly progress