ICTCLAS是中科院计算所出品的中文分词程序包,在国内一直有着良好的口碑和很高的使用率。之前一直只有 C++的版本提供,而现在C#,Delphi和Java版本已经纷纷出炉。下面用一个极小的例子,让大家10分钟之内就能用上ICTCLAS ,从此也开始自己的文本分类和搜索引擎开发之路。

需要首先说明的是,不同于以前的C++版提供的JNI调用,本次使用的是纯Java版本的ICTCLAS,下载地址在http://ictclas.org/Down_OpenSrc.asp。

好,假设你已经下载了我们需要使用的Java版本ictclas4j,现在把它解压缩,然后把Data文件夹整个拷贝到Eclipse项目的文件夹下,而bin目录下的org文件夹整个拷贝到你Eclipse项目的bin目录下,把src目录下的org文件夹整个拷贝到Eclipse项目的src目录下(最简单快捷的使用方式,或者你自己打成jar包,这样无论放到哪里,都可以在build path里面导入这个jar包啦)。

现在就可以在你的项目里新建一个类来试试。我新建了一个类,代码如下:

importorg.ictclas4j.bean.SegResult;

importorg.ictclas4j.segment.SegTag;

publicclassOneMain {

publicstaticvoidmain(String[] args) {

System.out.println("This is OneMain");

SegTag st =newSegTag(1);

SegResult sr = st

.split("一块勤奋地漂亮的一块钱,/打造经济的航空母舰。ABCD.#$% Hello World!\n又一段文本123辆 !3.0");

System.out.println(sr.getFinalResult());

}

}

很显然文本“一块勤奋地漂亮的一块钱,/打造经济的航空母舰。ABCD.#$% Hello World!"n又一段文本123辆 !3.0”就是我们用来测试的文本,其中包含了中文,英文,标点符号,乱七八糟符号(笑)及阿拉伯数字。

我们运行刚才的程序,看下输出结果:

This is OneMain

一块/s勤奋/a地/u漂亮/a的/u一/m块/q钱/n ,/w //nx打造/v经济/n的/u航空母舰/n。/w ABCD.#$%/nx Hello/nx World/nx !/w又/d一/m段/q文本/n 123/m辆/q

看到了么,分词的结果是一个长长的String类数据,用空格区分出每个词,每个词还用/后面的英文标号标出了词性。一起来看看几个有趣的地方。

原文中其实有两个“一块”,一处是“一块勤奋”,这里很正确的识别为了副词,而后面的“一块钱”中的“一块”也正确的识别为数量词。

阿拉伯数字正确识别为数词,包括小数形式的“3.0”。而英文和乱七八糟符号(包括那个不可见的换行符,你找到它在哪了吗?)则都被划为一类——/nx!(因为我也不知道ICTCLAS内部人员管它叫什么啦,非法字符啊,还是无效字符啊,或者其它字符啊,名字可以自己取嘛)

测试文本中还有两个叹号,一个是英文半角的!,一个是中文全角的!,两者也都被正确识别为标点符号,但英文的句号“.“就被认为是/nx啦。

测试文本中的空格被完全忽略。

好,十分简单对不对?去玩玩吧。

ictclas java 下载,10分钟开始使用ICTCLAS Java版相关推荐

  1. java下载zip文件损坏_使用Java下载.zip文件会导致损坏的.zip文件?

    我写了这个方法来下载最新的Selenium Chrome驱动程序,它不起作用.它导致损坏的.zip文件.任何人都可以发现我的错误在哪里?使用Java下载.zip文件会导致损坏的.zip文件? priv ...

  2. java 下载加速_一种基于Java的大文件下载加速方法与流程

    本发明涉及java/多线程技术领域,涉及一种加速文件下载装置,具体提供一种基于java的大文件下载加速方法. 背景技术: 现有的常用下载方式是基于浏览器的单线程下载.这种单线程下载的方式,是通过htt ...

  3. java 下载代码_实现文件下载的java代码

    实现文件下载的java代码 //这是实现下载类(servlet),详细思路代码例如以下: //也可连接数据库 package com.message; import javax.servlet.*; ...

  4. 10分钟看懂, Java NIO 底层原理

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:硬刚一周,3W字总结,一年的经验告诉你如何准备校招! 个人原创100W+访问量博客:点击前往,查看更多 写在前面 ...

  5. 0基础java应聘_不想搞Java了,6年经验去面试10分钟结束,现在Java面试为这么难...

    垃圾回收算法有几种类型? 他们对应的优缺点又是什么? 类的加载过程是什么?简单描述一下每个步骤 JVM 预定义的类加载器有哪几种?分别什么作用? 什么是双亲委派模式?有什么作用? 什么是内存溢出, 内 ...

  6. 6年经验java笔试_不想搞Java了,6年经验去面试10分钟结束,现在Java面试为这么难...

    垃圾回收算法有几种类型? 他们对应的优缺点又是什么? 类的加载过程是什么?简单描述一下每个步骤 JVM 预定义的类加载器有哪几种?分别什么作用? 什么是双亲委派模式?有什么作用? 什么是内存溢出, 内 ...

  7. 10分钟了解redis原理(java版)

    一直在玩redis,但是不是很了解原理,一个偶然的机会,接触到了redis源码,把自己学习到的记录下来,方便以后查看,同时也分享出来,供大家学习. windows如何安装redis,点击:( http ...

  8. libsvm java下载_一个基于LIBSVM(JAVA)的股票预测demo

    [实例简介] 一个基于LIBSVM的股票价格预测程序,采用随机森林算法对样本进行训练和预测,使用的编程语言为JAVA. [实例截图] [核心代码] stock-master └── stock-mas ...

  9. java实验10流_实验9 Java输入输出流

    <实验9 Java输入输出流>由会员分享,可在线阅读,更多相关<实验9 Java输入输出流(14页珍藏版)>请在金锄头文库上搜索. 1.山 西 大 学 计 算 机 与 信 息 ...

最新文章

  1. laravel中查看执行的SQL语句
  2. 数据结构学习笔记4.1--查找节点
  3. Nuget打包类库及引用
  4. linux网卡聚合软件下载,linux网卡聚合
  5. php类似while函数,php 实现类似于pyhon中的Construct库的功能(四)实现do-while功能...
  6. 30-算法训练 最短路 spfa
  7. 在blog中显示天气预报、日历、时钟、MSN、QQ在线状态、中国农历
  8. 转:12种JavaScript MVC框架之比较
  9. WIN7的便签使用快捷键
  10. Lattice Diamond 的安装以及license的获取
  11. 零基础学Arcgis(二)|ArcCatalog应用
  12. 招生报名小程序开发笔记二:功能需求设计
  13. A Few Useful Things to Know About Machine Learning 中英文对比和笔记
  14. java jtable 单元格合并_JTable合并单元格
  15. html页面悬浮提示框,js实现页面悬浮框
  16. HTML模仿win10亮度调节效果
  17. 微信小程序 wx.previewImage 预览分享图片结束之后 执行事件
  18. 北斗GPS天线使用中注意的问题
  19. 读《达·芬奇密码》| 一场侦探式的宗教传道
  20. linux 查看服务状态指令

热门文章

  1. 京东云linux查看挂载磁盘,使用S3fs在Linux实例上挂载Bucket
  2. pathon包傻瓜升级
  3. 多因子选股模型python_A题通过机器学习优化股票多因子模型
  4. 怎么看计算机的网络ping值,Win7怎么查看ping值 win7测试ping值的方法
  5. tao的开源代码_获取并编译TAO
  6. 中报业绩被华夏幸福拖累,“50元”的中国平安是否值得珍惜?
  7. 计算机 蓝牙鼠标卡顿,罗技蓝牙鼠标卡顿是怎么回事
  8. 【直流潮流】基于直流潮流的电力系统停电分布及自组织临界性分析
  9. 如何利用Java进行高效的彩信群发
  10. Docker容器无法解析域名