Robbe-1.6.0 发布 - PHP开源中文分词扩展, GBK支持

来源:互联网 发布:js获取本机ip地址 编辑:程序博客网 时间:2024/05/17 08:49

Robbe是建立在Friso中文分词器上的一个高性能php中文分词扩展。同时支持对UTF-8/GBK编码的切分。

Robbe-1.6.0:

1.更改接口适用Friso-1.6.0。

2.修改了UTF-8的测试程序,增加多个配置测试选项,同时增加了GBK测试程序。

3.更改了rb_split,可以自定义的返回切分结果的词条,类别,长度,真实长度,偏移量,词性(待实现),具体可以参考附件中的robbe.fun.php:

$_str = "研究生命起源,robbe高性能php中文分词组件。";echo "rb_split(\"" . $_str . "\"):<br />";//API://rb_split(string, Array, [long])//1.string: 要被切分的字符串。//2.Array: 配置选项,使用NULL来选择默认的配置(friso.ini中的配置)。//3.long: 可选参数,自定义切分返回选项,查看下面的$_rargs//1.完整的配置: //array('max_len'=>5, 'r_name'=>0, 'mix_len'=>2, 'lna_len'=>1, 'add_syn'=>1,//'clr_stw'=>1, 'keep_urec'=>0, 'spx_out'=>0, 'en_sseg'=> 1, 'st_minl'=>2, 'kpuncs'=>'.+#', 'mode'=>RB_CMODE);//1.在不了解friso内核的情况下, 请不要随便更改nthreshold//2.使用NULL来使用php.ini中指定的friso.ini文件中的配置//2.返回选项://词条: RB_RET_WORD, 类别:RB_RET_TYPE, 长度:RB_RET_LENGTH, 真实长度:RB_RET_RLEN, //偏移量:RB_RET_OFF,词性:RB_RET_POS(待实现)$_rargs = RB_RET_TYPE | RB_RET_LEN | RB_RET_RLEN | RB_RET_OFF | RB_RET_POS;//$_rargs = 0;//3.切分类别://CJK词条:RB_TYP_CJK, 英中混合词(b超):RB_TYP_ECM,中英混合词(卡拉ok):RB_TYP_CEM,//英文标点混合词(c++):RB_TYP_EPUN,标点:RB_TYP_PUN,未知类别:RB_TYP_UNK,其他类别(同义词):RB_TYP_OTR$_result = rb_split($_str, array('mode'=>RB_CMODE), $_rargs);unset($_str);foreach ( $_result as $_val ){$_str = $_val['word'];if ( $_rargs != 0 ) {$_str .= '[';if ( ($_rargs & RB_RET_TYPE) != 0 )$_str .= ', type: '.$_val['type'];if ( ($_rargs * RB_RET_LEN) )$_str .= ', len: ' . $_val['len'];if ( ($_rargs * RB_RET_RLEN) )$_str .= ', rlen: ' . $_val['rlen'];if ( ($_rargs * RB_RET_OFF) )$_str .= ', off: ' . $_val['off'];if ( ($_rargs * RB_RET_POS) )$_str .= ', pos: ' . $_val['pos'];$_str .= ']';}$_str .= '/ ';echo $_str;}

4.增加了rb_charset()函数来获取当前使用的编码。

5.增加了rb_version()/friso_version()函数来获取版本信息。

6.去除源码下所有Friso的头文件,改成了系统include目录下搜索。
    Friso-1.6.0默认会拷贝所有头文件到$(include)/friso目录下。

Robbe官方网站:http://code.google.com/p/robbe

Robbe源码托管:http://git.oschina.net/lionsoul/robbe


感谢网友的关注和反馈,祝您工作愉快。。。 大笑


0 0