因为毕业设计需要用到中文分词这个功能,自己写分词软件?简直是天方夜谭。
查了一下比较通用的分词软件,最后选择了paoding中文分词,理由看图片:
仅支持java语言,作为一个java爱好者,有什么比这句话更有诱惑的呢。
俗话说:万事开头难。第一步当然是先现在开发包了,下载地址:点击打开链接
下载之后,下一步就是去阅读开发文档了。于是,果断泪奔了!
有这么简陋的开发文档吗!!!能再简陋点吗!!!好吧,忍了!
还好上面还是有“效果体验”和“开始使用”两部分的文档。
先体验一下
效果还行吧~~
于是就开始使用
原来要设置一个词库,瞅瞅下载的开发包,里面有 dic 目录随便打开一个文件:
原来是这样子的。
大致明白了,庖丁是根据这些库里面的词组,进行对中文的分词的。按照开发文档设置好环境变量,把example包下面的例子拷贝到自己新建的项目中,根据提示,导入需要的包:
paoding依赖的是lucene,所以lucene的jar包要导入,logging的jar包主要负责日志生成,junit复测单元测试。
在paoding的开发包里面的lib目录下面,有两个spring的jar包,根据开发文档目录(因为只有目录没内容)推测,这个是用来支持spring的,暂时不用。
然后运行,结果报错!错误提醒说我没有设置PAODING_IDC_HOME,我明明设置了啊!重新搞了很多次,依旧不行。没办法了问google老师吧,查了半天,原来是开发文档搞错了
PAODING_DIC_HOME的变量值少个'/',应该是 E:/data/paoding/dic/
不知道是哪个部分责任的写的开发文档。google环境变量的同时也找到了另一种方法,根据环境变量报错提示,发现还有另一种方法设置paoding_dic_home。
paoding-analysis.jar 包里面有个文件paoding-dic-home.properties
把里面的修改为下面的
#values are "system-env" or "this";
#if value is "this" , using the paoding.dic.home as dicHome if configed!
paoding.dic.home.config-fisrt=this
#dictionary home (directory)
#"classpath:xxx" means dictionary home is in classpath.
#e.g "classpath:dic" means dictionaries are in "classes/dic" directory or any other classpath directory
paoding.dic.home=E:/paoding/dic/
#seconds for dic modification detection
#paoding.dic.detector.interval=60
里面的英文就不需要翻译了,修改之后就可不修改系统的环境变量了。
然后就可以运行example里面的例子了:
下一步就是研究具体怎么使用paoding分词了。
-------------------------------------------------------------------------------------------------------------------------------------------------------
自己把自己的这个demo和paoding的开发包放在csdn了,供大家免积分下载,共同交流;点击打开链接
------------------------------------------2013年4月25日17:13:24 补充----------------------------------------------------------
上面是在公司电脑弄得,今天在家里电脑又搞了一次,发现关于PAODING_IDC_HOME总是出现各种问题,如果用电脑的环境变量,貌似不用加最后的"/"而且不区分“\”和“/”……而且每次设置之后貌似eclipse不能检测到,必须重启。搞了半天也没弄明白怎么回事。
最后建议不适用环境变量设置,配置文件中设置,文件夹符合要用“/”最后的一个“/”貌似加不加无所谓。
现在在纠结paoding的自定义词库。