因此,虽然asciifolding会将è
转换为e
,但它不会过滤出像`
这样的单一重音,对吗?那我怎么能摆脱他们呢?例如,我想索引O`Learys
并能够搜索olearys
,O learys
,o`learys
的任何变体。
答案 0 :(得分:3)
我认为使用分析器,标记器或弹性搜索过滤器同时使O`Learys
同时匹配olearys
和O learys
是不可能的。它需要检测`
的存在并将O`Learys
编入索引两次:首先是一个令牌olearys
,然后是两个令牌o
learys
。这可以通过仅使用自定义令牌过滤器进行编写来完成。
作为一种变通方法,您可以使用Mapping Char Filter从输入中删除字符olearys
,使o`learys
和O`Learys
与`
匹配。