FLAT::Legacy::FA::RE

FLAT::Legacy::FA::RE is a regular expression base class.
Download

FLAT::Legacy::FA::RE Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Brett D. Estrade
  • Publisher web site:
  • http://search.cpan.org/~estrabd/FLAT-Legacy-FA.1/lib/FLAT/Legacy/FA/RE.pm

FLAT::Legacy::FA::RE Tags


FLAT::Legacy::FA::RE Description

FLAT::Legacy::FA::RE is a regular expression base class. FLAT::Legacy::FA::RE is a regular expression base class.SYNOPSIS use FLAT::Legacy::FA::RE; use FLAT::Legacy::FA::NFA; my $re = RE->new(); $re->set_re('a|b|(hi)*'); my $nfa = $re->to_nfa(); print $nfa->info(); # see stuff on NFA my $dfa = $nfa->to_dfa(); print $dfa->info(); # see stuff on DFA my @removed = $dfa->minimize(); print $dfa->info(); # see stuff on minimized DFA print "Removed ".($#removed+1)." statesn";This module implements a regular expression parser, and supports the conversion of a RE to a deterministic finite automata. A homegrown recursive descent parser is used to build the parse tree, and the method used to conver the regular expression to a DFA uses no intermediate NFA.Recursive Descent-safe Regex Grammar: R -> O O -> CO' O' -> '|' CO' | epsilon C -> SC' C' -> .SC' | epsilon S -> LS' S' -> *S' | epsilon L -> a | b | c |..| 0 | 1 | 2 |..| (R) | epsilon Terminal symbols: a,b,c,..,z,0,1,2,..,9,|,*,(,)NOTE: Concatenation operator, '.', is not a terminal symbol and should not be included in the regexFAQ: Q: Does this support Perl regular expressions?A: No, just the regular expression using the terminal symbols listed above.Requirements:· Perl Requirements: · Perl


FLAT::Legacy::FA::RE Related Software