我想为常规文本编写一个词法解析器。所以我需要检测以下令牌:
1) 单词 2) 数字 3) 点和其他标点符号 4) “...” “!?” “!!!” 等等
我认为为每个项目写“if else”条件并非易事。那么是否有任何用于 c# 的有限状态机生成器?我知道 ANTLR 和其他工具,但我会尝试学习如何使用这些工具,但我可以编写自己的“ifelse”FSM。
我希望找到类似的东西:
FiniteStateMachine.AddTokenDefinition(":)","smile");
FiniteStateMachine.AddTokenDefinition(".","dot");
FiniteStateMachine.ParseText(text);