仅索引包含solr中特定字符串的文档

时间:2013-12-01 00:12:12

标签: solr indexing

如何索引solr中包含特定字符串的文档?这是我目前的dataimporthandler

<dataConfig>
        <dataSource type="FileDataSource" encoding="UTF-8" />
        <document>
        <entity name="page"
                processor="XPathEntityProcessor"
                stream="true"
                forEach="/mediawiki/page/"
                url="pages.xml"
                transformer="RegexTransformer"
                >
            <field column="id"        xpath="/mediawiki/page/id" />
            <field column="title"     xpath="/mediawiki/page/title" />
            <field column="text"   regex="\{\{PersonData"   xpath="/mediawiki/page/revision/text" />
       </entity>
        </document>
</dataConfig>

我只想索引文本字段是否包含{{PersonData,但以上导入所有内容。这应该在导入处理程序或模式中指定吗?

1 个答案:

答案 0 :(得分:0)

你需要做这样的事情:

<field column="$skipDoc" regex="^#REDIRECT .*" replaceWith="true" sourceColName="text"/>

在这种情况下,跳过匹配指定正则表达式的文档,即。这里会跳过“重定向”到其他文章的文章。

此处的详细文档: http://wiki.apache.org/solr/DataImportHandler#XPathEntityProcessor

因此,对于你的,你需要找到一种方法来跳过“PersonData”数据不在“text”列中的所有文档。

特别注意:“示例:索引维基百科”是http://wiki.apache.org/solr/DataImportHandler#XPathEntityProcessor

的一部分