gpt4 book ai didi

parsing - 如何构建解析器以将 Lucene 语法解析为 AST

转载 作者:行者123 更新时间:2023-12-04 02:22:04 26 4
gpt4 key购买 nike

我有一个要求,但我不太了解实现细节。我有一个查询字符串 -->

(title:java or author:john) and date:[20110303 TO 20110308]

基本上,查询字符串是由 lucene 语法组成的。我真正需要做的是将查询字符串解析为 AST 并将 AST 转换为 lucene 查询。

我不熟悉编译器或解析器技术,但遇到了 Irony 项目。有人可以指出我如何以及从哪里开始吗?使用 Irony 或手工制作都可以。

非常感谢。

最佳答案

抱歉回复晚了:

一般来说,要创建解析器,最好先抽象地描述语法,然后使用解析器生成器生成解析器。

我创建了 lucene-query-parser.js使用 PEG 的图书馆语法,在 Github 仓库中 here .该语法特定于 PEG.js并使用 JavaScript 为解析的查询实现 AST 样式的结果。

不必返回 AST 样式结构,但我发现这对于我为其编写语法的项目最有用。您可以重新实现语法以返回您想要的任何类型的解析器结果。

关于parsing - 如何构建解析器以将 Lucene 语法解析为 AST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5269545/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com