【发布时间】:2015-11-15 15:27:21
【问题描述】:
我正在开发一种语言的解析器
标识符(例如,一个字母后跟多个字母数字字符或下划线),
整数(任意位数,可能还有插入符号
^),一些运算符,
文件名(一些字母数字字符,可能还有斜线和点)
显然文件名与整数和标识符重叠,所以通常我无法确定我是否有文件名或标识符,除非文件名包含斜杠或点。
但文件名只能跟随特定的运算符。
我的问题是在标记化过程中通常如何处理这种情况?我有一个表驱动的标记器(词法分析器),但我不确定如何从整数或标识符中区分文件名。这是怎么做到的?
如果文件名是整数和标识符的超集,那么我可能有可以处理它的语法产生式,但是标记重叠......
【问题讨论】:
-
我个人不会使用分词器。
标签: parsing token tokenize formal-languages