【发布时间】:2014-08-06 03:50:00
【问题描述】:
我正在寻找一种将字符串“abc123”分析为[“abc123”,“321cba”]的方法。我查看了reverse 令牌过滤器,但这只会让我得到 ["321cba"]。关于这个过滤器的文档非常稀少,仅说明
“
reverse类型的令牌过滤器...只是反转每个令牌。”
我还尝试过使用keyword_repeat 过滤器,它为我提供了两个实例。我不知道这是否有用,但现在它所做的一切都颠倒了这两种情况。
如何使用reverse 令牌过滤器同时保留原始令牌?
我的分析仪:
{ "settings" : { "analysis" : {
"analyzer" : {
"phone" : {
"type" : "custom"
,"char_filter" : ["strip_non_numeric"]
,"tokenizer" : "keyword"
,"filter" : ["standard", "keyword_repeat", "reverse"]
}
}
,"char_filter" : {
"strip_non_numeric" : {
"type" : "pattern_replace"
,"pattern" : "[^0-9]"
,"replacement" : ""
}
}
}}}
【问题讨论】:
-
那么,你的问题解决了吗?
-
@progrrammer:我找到了一个可以接受(但丑陋得可怕)的解决方法。请参阅已接受的答案。请不要因为我滥用正则表达式而打我。 :-o
标签: filter elasticsearch token