You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A state machine file contains a list of assignment statements. Comments are also allowed
and are started with the # character. Each statement is an assignment of a variable name
to a value or expression. Assigning a variable to a number produces a symbol, which is
added to the state machine's alphabet. Assigning a variable to an expression allows
for substitutions into later expressions. The special main variable should always be
assigned to at the end of the file, and is the final expression that will be compiled.
A subset of common regular expression syntax is supported. A list of operators and their
precedence is below. Operators with the same precedence are evaluated left to right.
Precedence
Syntax
Type
Meaning
1
a | b
Alternation
Matches either a or b
2
a b
Concatenation
Matches a followed by b
3
a*
Repetition
Matches zero or more occurrences of a
3
a+
Repetition
Matches one ore more occurrences of a
3
a?
Optional
Matches zero or one occurrence of a
3
a{n}
Repetition
Matches exactly n occurrences of a
3
a{n,}
Repetition
Matches n or more occurrences of a
3
a{,n}
Repetition
Matches up to n occurrences of a
3
a{n,m}
Repetition
Matches n to m occurrences of a
4
t:<expr>
Tag
Tags the following expression with tag t
5
(<expr>)
Grouping
Groups an expression
License
MIT
About
State machine compiler with regular expression style syntax