【发布时间】:2012-09-27 11:31:16
【问题描述】:
我在 SOLR 中使用“text_general”字段类型进行搜索。在使用特殊字符进行搜索时,我没有得到正确的结果并出现错误。我想使用这样的特殊字符:
-&+
查询
solr?q=Healing - Livesolr?q=Healing & Live
错误信息
客户端发送的请求语法错误 (org.apache.lucene.queryParser.ParseException: 无法解析 '("Healing \':第 1 行第 8 列的词法错误。遇到:之后: "\"愈合\")。
schema.xml
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.ASCIIFoldingFilterFactory" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.ASCIIFoldingFilterFactory" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<field name="title" type="text_general" indexed="true" stored="true" />
<field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/>
<defaultSearchField>text</defaultSearchField>
<copyField source="title" dest="text"/>
【问题讨论】:
标签: solr