1

当我使用 Apache Solr 4.9(solr 单元)索引 .docx 文档时;它提取带有很多“\n”的文本,有没有办法清理字段内容或删除“\n”?

字段内容如下所示:

"content": [
      " \n \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n \n   Solr  es un motor de búsqueda de código abierto basado en la biblioteca Java del proyecto Lucene, con APIs en XML/HTTP y  JSON , resaltado de resultados, búsqueda por facetas, caché, y una interfaz para su administración \n    \n  "

这是代码,我正在使用 SolrJ、java、tomcat 8、Apache Solr 4.9,我还尝试修改 schema.xml,在标记器上使用正则表达式将“\n”替换为“”(空白),还有另一个方式,但是没有任何东西使它起作用

代码在这里:

  SolrServer solrServer = new HttpSolrServer(url, httpClient);
  ContentStreamUpdateRequest up = new ContentStreamUpdateRequest("/update/extract");    
  up.addFile(new File("C:\\doc.docx"),"");
  up.setParam("literal.id", "indexDoc.docx");
  up.setParam("field", "anything");
  up.setAction(AbstractUpdateRequest.ACTION.COMMIT, true, true);

  NamedList<Object> result = solrServer.request(up);
  String y = "";

  rsp = solrServer.query( new SolrQuery( "id:indexDoc.docx") );
  System.out.println(rsp.toString()); `
4

0 回答 0