我想从头开始编写一个Python词法分析器,但我不知道该从哪里开始和如何开始。首先,我希望假设我们将有一个Python程序作为传递给分析器的字符串集。分析器应该找出新行在哪里以及要查看的适当空格。如何找出Python源代码中的新行?我已经阅读了Python的词汇规范,我们可以使用基于堆栈的方法来解决缩进和空格,但是无法确定如何查看。它只是使用'\n'进行正则表达式检查,还是有任何算法方式来确定这一点呢?
我故意不想使用lex、yacc或flex等工具。
我故意不想使用lex、yacc或flex等工具。
tokenizer.c
里面? - Gareth Rees