我想为进程代数创建一个解析器.进程代数具有以下语法:
System=P:[s,l]|(P:[s,l']|P:[s,l])\{a,b}
我如何检查字符串语句是否遵循此语法???一些伪代码会非常有用.
最佳答案 在一般情况下,您不能使用正则表达式来完成此任务,因为您具有嵌套构造(括号表达式).你至少需要所谓的“
push-down automaton”的力量.
要解决这个问题,您需要一个识别过程语言语法的“parser”.
你有语言的语法规范吗?您可以使用像ANTLR这样的工具来表达语法.
研究此搜索结果:Java Parser Generators