搜索多个单词时Solr search不工作

搜索多个单词时Solr search不工作,solr,solrnet,Solr,Solrnet,当最终用户试图搜索包含多个单词的项目时,我发现我的应用程序出现了问题。例如,我有一个标题字段,它的值是“两个单词”。如果我搜索“两个字”,我可以把物品拿回来,如果我搜索“两个字”,我什么也得不到 我使用SolrNet获取结果,但我真的不认为这是我获取结果的方式。我认为这与标题字段的标记化方式有关 总之,这里是我的Solr模式文件的压缩版本: <?xml version="1.0" ?><schema name="staging" version="1.1"> <ty

当最终用户试图搜索包含多个单词的项目时,我发现我的应用程序出现了问题。例如,我有一个标题字段,它的值是“两个单词”。如果我搜索“两个字”,我可以把物品拿回来,如果我搜索“两个字”,我什么也得不到

我使用SolrNet获取结果,但我真的不认为这是我获取结果的方式。我认为这与标题字段的标记化方式有关

总之,这里是我的Solr模式文件的压缩版本:

<?xml version="1.0" ?><schema name="staging" version="1.1">
<types>
    <fieldType name="ignored" indexed="false" stored="false" class="solr.StrField" />
    <fieldtype name="string"  class="solr.StrField" sortMissingLast="true" omitNorms="true"/>
    <fieldType name="tint" class="solr.TrieIntField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
    <fieldType name="tdate" class="solr.TrieDateField" omitNorms="true" precisionStep="6" positionIncrementGap="0"/>
    <fieldType name="long" class="solr.LongField" omitNorms="true"/>
    <fieldType name="text_tokenized" class="solr.TextField" positionIncrementGap="100">
        <analyzer type="index">
            <tokenizer class="solr.StandardTokenizerFactory"/>
            <filter class="solr.StopFilterFactory" ignoreCase="true" words="../lang/en/stopwords.txt" enablePositionIncrements="true" />
            <filter class="solr.LowerCaseFilterFactory"/>
            <filter class="solr.NGramFilterFactory" minGramSize="3" maxGramSize="50"/>
        </analyzer>
        <analyzer type="query">
            <tokenizer class="solr.StandardTokenizerFactory"/>
            <filter class="solr.StopFilterFactory" ignoreCase="true" words="../lang/en/stopwords.txt" enablePositionIncrements="true" />
            <filter class="solr.SynonymFilterFactory" synonyms="../lang/synonyms.txt" ignoreCase="true" expand="true"/>
            <filter class="solr.LowerCaseFilterFactory"/>
        </analyzer>
    </fieldType>
</types>

<fields>
    <field name="id" type="string" indexed="true" stored="true" multiValued="false" required="true" />
    <field name="title" type="text_tokenized" indexed="true" stored="true" multiValued="true" />
</fields>

<uniqueKey>id</uniqueKey>
<defaultSearchField>title</defaultSearchField>
<solrQueryParser defaultOperator="AND"/>

身份证件
标题

显然,我的模式包含其他字段,但我现在只显示了几个字段


有人看到问题了吗?

是您在stopwords文件中搜索的单词之一吗?您是否正在执行短语搜索,如
标题:“两个单词”
,或使用或类似
标题:(两个或多个单词)
?Arun-我的stopwords文件实际上是空的。我正在做这样的搜索标题:“两个字”。这有什么关系吗?嗯,搜索是否为您返回结果?此外,您还可以尝试在Solr admin UI中使用分析工具,查看
两个单词的索引方式。