【发布时间】:2017-07-04 23:38:52
【问题描述】:
如果我有一个给定的字符串“ABCDEF”,我该如何运行搜索,这样我才能得到所有找到子字符串的结果,例如“A”、“EF”、“CDE”、“ABCDEF”
我在使用正则表达式时遇到了问题,因为搜索带有一些可能遗漏的字母的字符串会得到像“BDE”这样的结果,这是无效的,因为在这种情况下允许跳过“C”。
【问题讨论】:
-
您尝试了哪些查询?
-
您尝试过使用 NGramFilter 吗?
-
你的问题很不清楚。您正在索引并尝试查找的文本是什么 (ABCDEF)?您正在搜索的搜索字符串是什么(A、EF 等)?
-
@Mysterion 到目前为止,我尝试了像 "A?B?C?D?E?F?" 这样的正则表达式尝试获取正确的东西......不过,这并没有走得太远。我知道有办法生成一个涵盖所有可能的子字符串迭代的大型正则表达式,但我希望避免这种混乱
-
@MatsLindh 这种看起来可能就是答案……你有什么推荐的在线 tuts 吗?结果我正在谷歌搜索并获得诸如“NGram tokenizer”之类的东西。我在正确的球场吗?
标签: solr fuzzy-search