friso_Friso -相关简介
friso是使用c语言开发的一个开源的中文分词器,使用流行的mmseg算法实现。完全基于模块化设计和实现,可以很方便的植入到其他程序中,例如:MySQL,PHP等。并且提供了一个php扩展:robbe,robbe调用实例:friso_Friso -功能特色
1。只支持UTF-8编码。【源码无需修改就能在各种平台下编译使用,加载完20万的词条,内存占用稳定为14M】
2。mmseg四种过滤算法,分词准确率达到了98.41%。
3。支持自定义词库。在friso源码附件的dict文件夹下,可以随便添加/删除/更改词库和词库词条,并且对词库进行了分类。
4。词库使用了friso的Java版本jcseg的简化词库。
5。支持中英混合词的识别。例如:c语言,IC卡。
7。很好的英文支持,电子邮件,网址,小数,分数,百分数。
8。支持阿拉伯数字基本单字单位的识别,例如2012年,5吨,120斤。
9。自动英文圆角/半角,大写/小写转换。
friso_Friso -分词速度
测试环境:2.8GHZ/2G/Ubuntu
简单模式:3.7M/秒
复杂模式:1.8M/秒 (mmseg的四种过滤算法)
friso_Friso -软件信息
授权协议:Apache 2
开发语言:C语言
系统要求:源码级跨平台
friso_Friso -使用方法
1。如何安装:
cd src
make
make install
2。分词测试:
运行如下命令来启动friso测试程序:
friso -init friso.ini文件地址
//例如我的friso.ini在/c/friso/文件夹中:
//请在friso.ini中正确的填写friso.lex_dir(词库配置文件friso.lex.ini的目录地址,必须以“/”结尾)
friso -init /c/friso/friso.ini
3。二次开发:
friso_t friso;
friso_task_t task;
//1.实例化一个friso分词实例,__path__为friso.ini的地址。
friso = friso_new_from_ifile(__path__);
//2.创建一个分词任务:
task = friso_new_task();
//3.设置分词任务的分词文本:
friso_set_text( task,"要被分词的文本");
//4.分词主程序:
while(( friso_next( friso, friso->mode, task ))!= NULL ){
//printf("%s[%d,%d]/ ", task->hits->word, task->hits->type, task->hits->offset );
printf("%s/ ", task->hits->word );
if( task->hits->type == __FRISO_NEW_WORDS__ ){
FRISO_FREE( task->hits->word );//释放组合词的内存。
}
}
//5.释放friso和分词任务:
friso_free_task( task );
friso_free( friso );
friso_Friso -版本信息
friso目前最高版本:1.2