我在铁轨上使用红宝石和红宝石。它的工作正常。提供给数据库的内容来自富文本编辑器,因此它具有HTML标记。我是否需要剥离这些标记,只需将内容保存在表格的单独字段中即可。使用它会提高搜索引擎的准确性。
答案 0 :(得分:2)
剥离标签永远不会伤害;噪音越小越好。
您可以使用Nokogiri轻松检索没有标签的文档文本:
require 'nokogiri'
xml = <<EOT
<xml>
<node>This is some text.</node>
<node>This is more text.</node>
</xml>
EOT
doc = Nokogiri::XML(xml)
puts doc.text
>> :!ruby test.rb
>>
>> This is some text.
>> This is more text.
>>
Nokogiri可以选择合并相邻的文本节点,但也很容易使用普通的Ruby数组和字符串操作。
答案 1 :(得分:0)
您还可以在过滤器链中使用其中一个HTML Strip标记符(在schema.xml中配置):
http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.HTMLStripStandardTokenizerFactory
可能比在Nokogiri中添加解析步骤更有效率。