代码之家  ›  专栏  ›  技术社区  ›  Jim McKeeth

使用Classes单元中的TParser解析筛选器字符串

  •  -1
  • Jim McKeeth  · 技术社区  · 17 年前

    我想解析一个类似于以下内容的筛选器字符串:

    ((Field1 = 'red') and (field2 = 2)) or (Field3 between 1 and 5) or (field4 in ['up', 'down'])
    

    1 回复  |  直到 17 年前
        1
  •  8
  •   Mihaela    17 年前

    IDE使用TParser将DFM文件解析为二进制格式(ObjectTextToBinary)。据我所知,它只识别5个标记:(EOF、Symbol、String、Integer、Float)。它不够通用,而是为特殊目的而建造的。您必须对其进行子类化,并根据需要更改其实现。我的观点是,最好只是为你的特定目的编写自己的类/自动机。(它甚至不是解析器,而是词法标记器)。