没有html标记的查询solr?
我已向Solr发送了以下数据:没有html标记的查询solr?,solr,solrj,Solr,Solrj,我已向Solr发送了以下数据: { "id":"kkk", "name":"<div>book</div>" } { “id”:“kkk”, “名称”:“书” } solr收到数据后,如果搜索“div”,结果不会显示,但搜索“book”时,结果会显示,我该怎么办? 这是我的模式: <field name="name" type="text_html" indexed="true" stored="true"/> <fieldType
{
"id":"kkk",
"name":"<div>book</div>"
}
{
“id”:“kkk”,
“名称”:“书”
}
solr收到数据后,如果搜索“div”,结果不会显示,但搜索“book”时,结果会显示,我该怎么办?
这是我的模式:
<field name="name" type="text_html" indexed="true" stored="true"/>
<fieldType name="text_html" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="lang/stopwords_en.txt"
/>
</analyzer>
</fieldType>
当我进行索引时,solr只能剥离html标记,如果我想直接向solr发送数据,我如何剥离html标记?您在字段
name
中看到的是solr查询的结果,而不是solr真正索引的内容
过滤器将删除HTML标记
只有在所有过滤器/标记器都被执行之后,内容才真正被Lucene索引
请看一看,以便更好地了解正在发生的事情
总之,每个字段有两个内容:
- 一种存储内容(
),它是传递给索引的源文本(当文档符合查询约束时,它将返回给用户)stored=“true”
- 一种索引内容(
),它是经过标记/过滤器处理后的源内容,然后用于信息检索部分index=“true”
好了,在处理后无法修改存储的(源)内容,正如前面所说的,这是字段的源,因此如果您想修改源,只需在提交给Solr之前准备它。您在字段
名称
中看到的作为Solr查询的结果,并不是Solr真正索引的内容
过滤器将删除HTML标记
只有在所有过滤器/标记器都被执行之后,内容才真正被Lucene索引
请看一看,以便更好地了解正在发生的事情
总之,每个字段有两个内容:
- 一种存储内容(
),它是传递给索引的源文本(当文档符合查询约束时,它将返回给用户)stored=“true”
- 一种索引内容(
),它是经过标记/过滤器处理后的源内容,然后用于信息检索部分index=“true”
抱歉,没有办法修改存储的(源)处理后的内容,如前所述,这是字段的来源,因此如果您想修改来源,只需在提交给Solr之前进行准备。直接向Solr发送数据是什么意思?只需使用Solr存储数据而不是索引文件…Solr只分析索引字段。感谢兄弟,我理解使用数据导入处理程序可能会有所帮助ped,但文档对我来说有点难,你有没有exmaple可以使用solr数据导入处理程序来剥离html标记?直接向solr发送数据是什么意思?只需使用solr存储数据而不是索引文件…solr只分析索引字段。感谢兄弟,我明白使用数据导入处理程序可能会有所帮助,但文档对我来说有点难,你有没有exmaple可以使用solr数据导入处理程序来剥离html标记?那么如果我想剥离存储文本中的html标记,我该怎么做?我已经更新了我的答案以反映你的评论,让我知道它是否清晰,如果我想剥离存储文本中的html标记,我该怎么做?我有e为了反映您的评论,更新了我的答案,如果答案清楚,请告诉我