Lucence-IKAnalyzer中文分词器

Lucence

IKAnalyzer中文分词器

    分词方式:细粒度切分 和 最大词长切分,

    如下为示例:

    IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包

    最大词长分词后结果类似如下:

    ikanalyzer | 是 | 一个 | 开源 | 的 | 基于 | java | 语言 | 开发 | 的 | 轻量级 | 的 | 中

文 | 分词 | 工具包 |

    最细粒度分词后结果类似如下:

    ikanalyzer | 是 | 一个 | 一 | 个 | 开源 | 的 | 基于 |  java  | 语言 | 开发 | 的 | 轻

量级 | 量级 | 的 | 中文 | 分词 | 工具包 | 工具 | 

导入包和相关配置文件

配置文件IKAnalyzer.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> 

<properties> 

   <comment>IK Analyzer 扩展配置</comment>

   <!--用户可以在这里配置自己的扩展字典

   <entrykey="ext_dict">/mydict.dic</entry>

    -->

    <!--用户可以在这里配置自己的扩展停止词字典 

   <entrykey="ext_stopwords">/ext_stopword.dic</entry>

   -->

</properties>

修改配置类Configuration

修改配置类Configuration的分词器,使用IKAnalyzer分词器,主要参看红色部分代码

public class Configuration {

   private Configuration(){}

  

   public  static final Version LOCAL_VERSION=Version.LUCENE_30;

   //使用IKAnalyzer,当参数为true时,表示使用最大词长分词,false表示使用细粒度分词

   public  staticfinal Analyzer ANALYZER=new IKAnalyzer(true);

   private static Directory DIRECTORY;

   private static String PATH="e:/testdir/lucenedir";

  

   static{

      try{

         DIRECTORY=FSDirectory.open(new File(PATH));

      }catch (Exception e) {

         // TODO: handle exception

         e.printStackTrace();

      }

   }

 

   publicstatic Directory getDIRECTORY() {

      return DIRECTORY;

   }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值