如何索引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,但以上导入所有内容。这应该在导入处理程序或模式中指定吗?
答案 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
的一部分