我正在评估几个不同的库,看看哪一个最适合我的需要。
现在我正在看Bleve,但我很乐意使用任何库。
我希望索引完整的文件,除了特定的是在XML格式。对于那些我只希望Bleve索引特定的标签,因为大多数标签是没有价值的搜索。我正在尝试评估这是否可能,但是,作为Bleve的新手,我不确定我需要定制哪个部分。
文档非常好,但我似乎找不到这个答案。所有我需要的是一个关键字和步骤的解释,没有代码是必需的,我只是需要一个推动,因为我花了几个小时旋转我的轮子与谷歌搜索,我没有得到任何地方。
发布于 2017-07-08 14:45:33
可能有很多方法可以实现这一点。这里有一个。
Bleve索引文档,这些文档是键/值元数据对的集合。
在您的示例中,文档可以由两个键/值对表示:.xml文件的名称(用来惟一标识文档)和文件的内容。
type Doc struct {
Name string
Body string
}问题是body是XML,而Bleve不支持开箱即用的XML。
解决这个问题的一种方法是通过剥离不需要的标记和内容来预处理XML文件。您可以使用encoding/xml标准库来完成此任务。
有关类似任务的示例,您可以查看https://github.com/blevesearch/fosdem-search/的代码
在那里,他们通过将文件解析为可以提交给Bleve进行索引(https://github.com/blevesearch/fosdem-search/blob/master/ical.go)的格式,以自定义格式(https://github.com/blevesearch/fosdem-search/blob/master/fosdem.ical)对文件进行索引。
https://stackoverflow.com/questions/44980688
复制相似问题