SolrNet模糊搜索不止一个字

时间:2012-04-13 08:17:27

标签: c# lucene solrnet fuzzy-search

我是Solr的新手,我希望使用SolrNet进行全文搜索。所以我以前习惯MySql全文搜索而且速度很慢。我找到了Solr解决方案。这是非常快速和可扩展性。但我不能在索尔模糊搜索。我怎样才能做到这一点?我的例子和目标如下。请原谅我的英语,并感谢你的建议。

我可以模糊搜索但只有一个字(文章): 例如:

var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Article>>();
List<Article> search = solr.Query(new SolrQuery("segsource:article~") ).Cast<Article>().ToList();

但我想搜索多个单词(文章名称,bla bla bla - 就像&gt;

mysql> SELECT * FROM articles WHERE MATCH (title,body)
    -> AGAINST ('more than one word bla bla bla');

)。 例如

var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Article>>();
List<Article> search = solr.Query(new SolrQuery("segsource:article name ~") ).Cast<Article>().ToList();

2 个答案:

答案 0 :(得分:2)

我会看看是否有更好的方法可以做到这一点,但与此同时,以下内容对我有效。

segsource :(文章〜名字〜)

IE,你必须在空格上拆分查询并重新加入它们在每个空格上插入tilda。

答案 1 :(得分:0)

我从未使用过SolrNet,但是这样的东西会产生与你相关的东西:

new SolrQuery("segsource:article~ AND segsource:name~")