From c272506529ea5fde9352a600417b2eaa6a230a6a Mon Sep 17 00:00:00 2001 From: Patrick Simianer Date: Tue, 17 Aug 2010 15:33:02 +0200 Subject: release --- regexvis.html | 180 ++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 120 insertions(+), 60 deletions(-) (limited to 'regexvis.html') diff --git a/regexvis.html b/regexvis.html index c2c765c..22c0a95 100644 --- a/regexvis.html +++ b/regexvis.html @@ -1,90 +1,150 @@ - - - - + + + - Visualizing Regular Expressions (Patrick Simianer, 'Endliche Automaten', SS2010) + Visualizing Regular Expressions | regexvis - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + +
- -

- - Description -  Enter a regular expression ('*', '|' and '()' supported). The usable alphabet is shown above the input box. Tick 'Make a Graph' to enable or disable graph generation. The generated graph is deterministic finite state automata. Once the (correct) expression is parsed, it is possible to simulate the automata by entering a accepted or non-accepted word in the lower input box.
-

- + + + +
+ Reload + Description + + This is a little tool to visualize regular expressions + using a deterministic finite state automaton. + It was developed for a seminar by Karin Haenelt -- + "Endliche Automaten für die Sprachverarbeitung" + in summer term 2010. It is written in pure JavaScript (plus some SVG and underlying HTML) using the + Raphaël and jQuery libraries. The corresponding + presentation can be downloaded here (in German).
+ The project includes a parser for basic regular expressions, a simulator for testing if a given word is included in the + language defined by the regular expression and another relatively fancy simulator for checking includance graphically step + by step. These parts are based on several standard algorithms which can be found in the following literature: +
    +
  • Recursive descent parser, Thompson's algorithm: + Algorithmen in Java (Hans Werner Lang); + Regular expression search algorithm (K. Thompson); + Compilers. Principles, Techniques & Tools. (Aho et al)
  • +
  • Epsilon closure: The treatment of epsilon moves in subset construction. (Gertjan van Noord)
  • +
+ The user interface should be self explanatory and fail safe but you can obtain help for each step by hovering over The + corresponding ? symbol. If something goes wrong just click Reload. +

Click Description again to hide this text.

+
+
+ + + + - - - + + + + + + + + + + + + + + - + - + + + - - - - - - + + +
Alphabet: - -
-1
Alphabet: +
+
+
?
+
 0
Draw Graph: + + +
?
+
 1
Regular Expression: - + + + +
?
+
 2
Word: - -
Make a Graph: - -
+ + + +
?
+
- + + + +

- Reload

+ + +
+ -
-
+ -- cgit v1.2.3