我在轨道上使用带有红宝石的太阳黑子。它工作正常。输入数据库的内容来自富文本编辑器,因此它确实具有 HTML 标记。我是否需要剥离这些标签并将内容保存在表格中的单独字段中。使用它会提高搜索引擎的准确性。
问问题
239 次
2 回答
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 数组和字符串操作也很容易。
于 2010-12-22T17:58:31.497 回答
0
您还可以在过滤器链中使用 HTML Strip 标记器之一(在 schema.xml 中配置):
http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.HTMLStripStandardTokenizerFactory
可能比在 Nokogiri 中添加解析步骤更有效。
于 2010-12-22T19:46:28.360 回答