1

我正在索引字段,使用StandardAnlyzer它从输入字符串中删除标点符号。我的输入字符串包含特殊字符,如@, #,-等。

例如:索引数据可能包含类似 userid: 的值AB@234ABC#DF

我正在尝试通过 BooleanQuery uesrid 更新索引:ABC@34删除以前的文档使用writer.deletedocuments(query); 并使用更新索引writer.updateDocuments(Term,document);

使用上述查询删除当前 indexex 会删除所有以 . 开头的值,即ABC@带有 userid 值ABC@123ABC@55等的文档也会被删除。

任何人都可以提出一种解决方案来索引和更新包含上述特殊字符的特定文档。

任何建议都非常感谢。

预先感谢。

查克拉达尔

4

1 回答 1

2

最好的选择可能是使用KeywordAnalyzer为您的字段编制索引userid,然后使用IndexWriter.deleteDocuments(Term)删除文档。

于 2013-02-06T16:19:00.513 回答