我不确定如何将词法标记来源。现在,我只能想到使用正则表达式将字符串解析为具有给定规则(标识符,诸如+,-等的符号)的数组。
例如,
begin x:=1;y:=2;
那么我想标记单词,变量(在这种情况下为x,y)和每个符号(:,= ,;)。
最佳答案
使用正则表达式是实现词法分析器的常用方法。如果您不想使用它们,那么您最终还是要自己实现一些正则表达式部分。
尽管就性能而言,如果您自己进行操作可能会更有效率,但这不是必须的。
关于regex - 使用正则表达式为词法分析器标记字符串是否是个坏主意?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14761776/