`

Solr 获取分词

 
阅读更多

个人博客:http://demi-panda.com

 

 

Solr 1.4 有了对字段的分词。FieldAnalysisRequestHandler 可以对某个字段或字段类型的分词器对查询串取到分词数据。

用 solr 的默认配置,如 solr 1.4.0。

我用 mmseg4j 为例。在 solr.root/example/solr/conf/schema.xml 的 types 元素内加:

  1. <fieldType name="text_cn" class="solr.TextField" positionIncrementGap="100">  
  2.   <analyzer>  
  3.     <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory"/>  
  4.   </analyzer>  
  5. </fieldType>  

把 IKAnalyzer -3.2.8.jar 放到 solr.home/example/solr/lib,没有 lib 目录,创建一个。更多关于 solr 中使用 mmseg4j 的内容请看:solr 中文分词  IKAnalyzer  使用例子。

如:“北京烤鸭
http://localhost:6091/solr-web-shop/shop/analysis/field?q=北京烤鸭&analysis.fieldtype=text&indent=on&wt=json


{

  • responseHeader : {
    • status : 0 ,
    • QTime : 3
    },
  • analysis : {
    • field_types : {
      • text : {
        • query : [
          • "org.wltea.analyzer.lucene.IKTokenizer" ,
          • [
            • {
              • text : "北京烤鸭" ,
              • start : 0 ,
              • end : 4 ,
              • position : 1 ,
              • positionHistory : [
                • 1
                ],
              • type : "word"
              },
            • {
              • text : "北京烤" ,
              • start : 0 ,
              • end : 3 ,
              • position : 2 ,
              • positionHistory : [
                • 2
                ],
              • type : "word"
              },
            • {
              • text : "北京" ,
              • start : 0 ,
              • end : 2 ,
              • position : 3 ,
              • positionHistory : [
                • 3
                ],
              • type : "word"
              },
            • {
              • text : "烤鸭" ,
              • start : 2 ,
              • end : 4 ,
              • position : 4 ,
              • positionHistory : [
                • 4
                ],
              • type : "word"
              }
            ],
          • "org.apache.lucene.analysis.synonym.SynonymFilter" ,
          • "org.apache.lucene.analysis.StopFilter" ,
          • "org.apache.lucene.analysis.LowerCaseFilter" ,
          • "org.apache.solr.analysis.RemoveDuplicatesTokenFilter" ,
          ]
        }
      },
    • field_names : { }
    }

}


代码实现:

 

public static void main(String[] args) throws MalformedURLException, SolrServerException, IOException {
    CommonsHttpSolrServer solrServer = new CommonsHttpSolrServer("http://localhost:6091/solr-web-shop/shop");
    
    FieldAnalysisRequest request = new FieldAnalysisRequest("/analysis/field");
    request.addFieldName("shopName");
    request.setFieldValue("text");
    request.setQuery("北京烤鸭");
    FieldAnalysisResponse response = request.process(solrServer);
    System.out.println(response.toString());
    Iterator it = response.getFieldNameAnalysis("shopName").getQueryPhases().iterator();
    while(it.hasNext()) {
      AnalysisPhase pharse = (AnalysisPhase)it.next();
      List<TokenInfo> list = pharse.getTokens();
      for (TokenInfo info : list) {
        
      System.out.println(" text : "+ info.getText());
      }
      
    }
  }
   

 

分享到:
评论

相关推荐

    solr ik分词器

    1. **获取IK Analyzer**:首先,你需要下载ikanalyzer-solr5的压缩包,这个版本是专门为Solr 5.x设计的。确保你下载的版本与你的Solr实例匹配。 2. **解压并复制文件**:解压缩下载的文件,将其中的`ikanalyzer-*....

    solr中文分词jar包ik-analyzer 含class配置 ik-analyzer-7.5.0

    1. **下载与解压**:获取ik-analyzer-7.5.0.jar文件,解压缩后将jar包放入Solr的lib目录下,确保Solr运行时能加载到该分词器。 2. **配置Solr schema.xml**:在Solr的schema.xml文件中,定义字段类型(fieldType),...

    solr中文分词器

    例如,精确模式适合于对搜索结果的精确度要求较高的情况,而全模式则能获取更多的分词结果,适用于关键词抽取或文档相似度计算。 在Linux环境下,将IK Analyzer集成到Solr中通常涉及以下步骤: 1. **下载与安装**...

    solr中文分词高版本

    1. **下载与解压**:首先,从提供的压缩包中解压ikanalyzer-solr6.5及以上高版本文件,获取分词器的相关jar包。 2. **配置Solr**:接着,将这些jar包添加到Solr的lib目录下,这样Solr启动时会自动加载这些库。同时...

    solr分词器

    Solr分词器是Apache Solr搜索引擎中的一个重要组件,它负责对输入的文本进行分词处理,以便于索引和查询。在理解Solr分词器之前,我们首先要明白Solr是一个开源的企业级搜索平台,它提供了高效、可扩展的全文检索、...

    solr IK分词需要的资料

    首先,你需要下载IK分词器的最新版本,通常可以从GitHub或其他开源软件仓库获取。解压缩后,会得到一个包含`classes`、`lib`等目录的文件夹。 2. **复制到Solr目录** 将解压后的`lib`目录下的所有JAR文件复制到...

    k-analyzer-solr solr分词器

    对于k-analyzer-solr和ikanalyzer-solr5,你应该仔细阅读这个文件,以获取更具体的使用和配置步骤。如果遇到问题,可以参考文档或在线社区寻求帮助。 总的来说,正确配置和使用Solr分词器对于提升搜索性能和用户...

    solr6.0中IK分词需要的资料

    IK分词器(Intelligent Chinese Analyzer for Solr)是针对中文的一种高效、灵活的分词工具,特别适合于Solr和Elasticsearch等全文检索引擎。在这个压缩包文件中,包含了Solr6.0使用IK分词所需的一些关键资料。 ...

    solr 5.x 和 6.x 最新中文分词器

    同时,持续关注Solr的版本更新,以便及时获取新特性并修复已知问题。 总之,选择合适的中文分词器并对其进行有效配置,对于提升Solr的中文搜索效果至关重要。同时,关注Solr的版本更新和最佳实践,有助于保持系统的...

    solr5配置中文分词

    中文分词是Solr5处理中文文档的关键步骤,因为中文句子不像英文那样有明显的空格分隔单词,需要通过分词器来将连续的汉字序列切分成有意义的词汇单元。本篇文章将深入探讨在Solr5中配置中文分词的过程。 首先,我们...

    支持solr5.5 solr6.0中IK分词需要的资料

    标题和描述提到的是针对Solr 5.5和Solr 6.0版本的IK分词器支持的相关资料,这意味着这些资源可能包括配置文件、文档、示例代码或者更新日志,帮助用户在这些特定版本的Solr中集成和优化IK分词器。 首先,让我们来看...

    JAVA+Solr分词项目工程实例Java源码

    **JAVA+Solr分词项目工程实例** 在Java开发中,搜索引擎和文本处理是一个重要的领域,而Apache Solr是其中一个非常流行的开源全文搜索平台。这个项目工程实例是关于如何使用Java与Solr进行集成,实现分词搜索功能的...

    JAVA+Solr分词项目工程实例Java实用源码整理learns

    标题中的"JAVA+Solr分词项目工程实例Java实用源码整理learns"指的是一个基于Java编程语言并结合Solr搜索引擎的项目实例。这个项目主要关注于文本处理和信息检索,利用Solr的分词功能来提升搜索效率和准确性。Solr是...

    solr7 的 ik分词器

    1. **下载并解压**:从官方仓库或第三方资源获取ik-analyzer-solr7.x压缩包,并将其解压至Solr的`server/solr/configsets/_default/conf`目录下。 2. **修改配置**:编辑`schema.xml`文件,将`&lt;fieldType&gt;`元素中的`...

    ikanalyzer-solr8.4.0_solr8_solr_ikanalyzer_中文分词_

    1. **下载与解压**:首先,下载并解压 ikanalyzer-solr8.4.0 压缩包,获取包含 ikanalyzer 相关 jar 文件和配置文件的目录。 2. **添加依赖**:将解压后的 ikanalyzer 相关 jar 文件添加到 Solr 的 lib 目录下。这...

    JAVA+Solr分词项目工程实例源代码学习

    本项目实例旨在帮助学习者掌握如何结合Java与Solr进行分词项目的实施。以下是关于这个主题的详细知识讲解: 1. **Java**: Java是一种广泛使用的面向对象的编程语言,以其“一次编写,到处运行”的特性闻名。在信息...

    solr(ik分词器)需要的jar包

    在索引时,通常开启智能分析以获取更细粒度的分词;在查询时,关闭智能分析可以提高查询速度。 完成以上步骤后,重启Solr服务器,你的Solr实例现在就能使用IK分词器处理中文文本了。这将极大地提升对中文文本的搜索...

    solr+IK分词集成tomcat实现全文检索

    2. **下载Solr**:从官方源获取Solr的zip包,解压后将其放置在Tomcat的webapps目录下,重命名为`solr`。 3. **配置Solr核心**:在`solr/solr_home`目录下创建一个新的核心,例如`mycore`,并配置相应的`solrconfig....

    solr 3.4 中文分词配置问题

    Solr 是一个流行的开源搜索引擎,特别适用于全文检索和信息检索应用。在Solr 3.4版本中,中文分词是实现中文搜索的关键步骤。...通过博客“solr 3.4 中文分词配置问题”,读者可以获取详细的指导和解决实际遇到的问题。

    Solr6.0集成IK-Analyzer分词器

    - 将`IK-Analyzer-2015FF.jar`文件放入Solr的lib目录下,这个jar包包含了IK Analyzer的所有核心库,用于处理中文分词。 3. **配置Schema.xml** - 在Solr的`solr_home/solr/collection_name/conf`目录下找到`...

Global site tag (gtag.js) - Google Analytics