Symfony ElasticSearch“;逐字逐句;标记器/过滤器
如果你搜索“樱桃”,我会用雪球分析仪找到一种叫做“樱桃”的产品。一切都像一个魔咒,但现在我想能够搜索“单词中的单词” 例如,如果搜索“浆果”,服务器应该找到“蔓越莓”、“黑莓”等等。“berry”也会出现同样的结果 我必须为此使用哪个过滤器/标记器?我不熟悉ElasticSearch 这是我现在的配置:Symfony ElasticSearch“;逐字逐句;标记器/过滤器,symfony,filter,
elasticsearch,tokenize,Symfony,Filter,
elasticsearch,Tokenize,如果你搜索“樱桃”,我会用雪球分析仪找到一种叫做“樱桃”的产品。一切都像一个魔咒,但现在我想能够搜索“单词中的单词” 例如,如果搜索“浆果”,服务器应该找到“蔓越莓”、“黑莓”等等。“berry”也会出现同样的结果 我必须为此使用哪个过滤器/标记器?我不熟悉ElasticSearch 这是我现在的配置: settings: index: analysis: analyzer: index_analyzer:
settings:
index:
analysis:
analyzer:
index_analyzer:
type: "snowball"
language: English
为此,我使用了nGram标记器。我强烈建议您在Elasticsearch中或在Web服务器上运行此插件-。。。这将允许您使用Elasticsearch提供的各种分析器来分解令牌。您是否尝试使用FoselasticCabundle(用于在Symfony中使用Elasticsearch)?你可以使用通配符,你有很多品种可供归档或搜索是的,我正在使用FOS Elastica。我不想使用通配符,因为它们的伸缩性很差。