首页 >php教程 >php手册 >Robbe-1.6.0 发布

Robbe-1.6.0 发布

WBOY
WBOY原创
2016-06-06 19:53:411367浏览

Robbe是建立在Friso中文分词器上的一个高性能php中文分词扩展。同时支持对UTF-8/GBK编码的切分。 Robbe-1.6.0: 1.更改接口适用Friso-1.6.0。 2.修改了UTF-8的测试程序,增加多个配置测试选项, 同时增加了GBK测试程序。 3.更改了rb_split,可以自定义的返回

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


感谢网友的关注和反馈,祝您工作愉快。。。 Robbe-1.6.0 发布


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn