ec ::= [~\-\]\\\~]
| escaped
-range ::= ec => "range0"
- | ec ^"-" ec => "range1"
+range ::= ec => "range"
+ | ec ^"-" ec
e ::= word => "nonTerminalY"
| [(][)] => "epsilon"
| ^"{" alternatives "}" /ws
- | "[" (range*) "]" => "range"
- | "[~" (range*) "]" => "rangex"
+ | "[" (range*) "]" => "ranges"
+ | "[~" (range*) "]" => "rangesx"
| e ^"+/" e /ws
| e ^"*/" e /ws
| e ^"?" /ws