0
我正在为Excel公式编写词法分析器和分析器。词法分析器中的优先顺序
在Excel中,我们可以为单元格指定一个名称。例如,abc
是有效的名称,但是,禁止命名单元格B2
以避免与单元格 B2
混淆。因此,一旦我们遇到公式=B2
,我们确信B2
引用的是单元而不是用户定义的名称。
在我lexer_formula.mll
,我已经定义的标识符:
let lex_cell = ['A' - 'Z']+ ['0' - '9']+ (* regular expressions to include all the cells *)
let lex_name = ['A' - 'Z' '0' - '9']+ (* regular expressions to include all the names *)
但像B2
与之相匹配的字符串都lex_cell
和lex_name
,没有人知道我怎么能告诉词法分析器首先要考虑的lex_cell
,然后lex_name
?将lex_cell
放在lex_name
之前是否足以将rule token = parse
?
你实际上使用ocamllex吗?你有很多标签,但你永远不会说你正在使用哪种扫描仪发生器。 – rici
是的,我正在使用'ocamllex'。 – SoftTimur