Java Lucene搜索,单词分隔符

Java Lucene搜索,单词分隔符,java,lucene,hibernate-search,Java,Lucene,Hibernate Search,我有一个单词列表,例如: 'today today t-oday t oday t/oda y 如果我搜索单词today或t/oday或“today”,如何从Lucene索引检索所有这些单词 实际上,我希望搜索对符号、破折号、空格和其他一些字符不敏感 处理这种情况的最好办法是什么?我应该编写自己的分析器/标记器,还是有什么东西可以用来执行此搜索 我正在使用Hibernate搜索。向分析器中添加CharFilter可能是最好的解决方案。这允许您在应用标记器之前对输入进行预处理。示例4.13中有一

我有一个单词列表,例如:

'today
today
t-oday
t oday
t/oda y
如果我搜索单词today或t/oday或“today”,如何从Lucene索引检索所有这些单词

实际上,我希望搜索对符号、破折号、空格和其他一些字符不敏感

处理这种情况的最好办法是什么?我应该编写自己的分析器/标记器,还是有什么东西可以用来执行此搜索

我正在使用Hibernate搜索。

向分析器中添加CharFilter可能是最好的解决方案。这允许您在应用标记器之前对输入进行预处理。示例4.13中有一些TokenFilter示例

我建议使用、和定义映射来去除您不感兴趣的字符

从输入中剥离所有空格对我来说似乎是一种非常不寻常的情况,因为这可能会阻止有用的标记化,但我想我会假设您已经考虑到了这一点