PHP 安装 Robbe 中文分词扩展

转载 2015年07月10日 15:57:17
本文地址:http://blog.aboutc.net/php/59/php-installation-robbe-chinese-word-extension
windows安装编译http://www.oschina.net/question/853816_135216


Starred by 16 users
Members
chenxin6...@gmail.comchenxin1...@gmail.com
Featured
Downloads
Wiki pages
Links

最新动态: robbe-1.6.0发布了

robbe开源中国git托管

一。robbe php开源高性能中文分词扩展

robbe是建立在friso中文分词上的一个高性能php中文分词扩展。了解friso

1.目前最高版本:friso 1.6.0。

2.mmseg四种过滤算法,分词准确率达到了98.41%。

3.详细功能,请访问friso官方首页:friso

二。分词速度

测试环境:2.8GHZ/2G/Ubuntu

简单模式:3.1M/秒

复杂模式:1.4M/秒

(因为php中的大量字符串的复制,性能比friso有点下降)。

三。使用方法

Linux如何自主编译安装robbe?

Win下如何自己编译安装robbe?

robbe安装ueaner博客

1。下载:

(1).在friso下载下载最新的friso附件。

(2).在robbe下载下载最新的robbe附件。

2.安装:

(1). winNT系统: 复制friso-{version}/lib/win32/下的friso.dll和robbe-{version}/lib/win32/下的php_robbe.dll到php的ext扩展目录下。

(2). linux系统: 同上(或者自己make去安装,先安装friso,在安装robbe)。

(3). php.ini配置:

//1.加入扩展:

extension=php_robbe.dll   //win
extension=php_robbe.so    //linux

//2.加入robbe php配置:

[robbe]
;configuration file for robbe.
robbe.ini_file = friso.ini文件的绝对地址。

3。php测试:

(1).运行phpinfo.php

看到:如下的配置信息表示配置成功了:

             robbe

Robbe Support	enabled
Version	        1.1
Bug Report	chenxin619315@gmail.com
Learn More	http://code.google.com/p/robbe
C Edition	http://code.google.com/p/friso
Java Edition	http://code.google.com/p/jcseg

Directive	Local Value	Master Value
robbe.ini_file	friso.ini地址	friso.ini地址

(2).运行robbe_php下的两个php文件,你懂得。

robbe函数集合和使用实例




更新于 2014-06-14 23:55:57UEANER

系统环境:

  • CentOS 6.5 x86_64
  • PHP 5.5.9

简介

Robbe 是建立在 friso 中文分词上的一个高性能 PHP 中文分词扩展。采用流行的 mmseg 算法实现, 类似于 coreseek 的 LibMMSeg 中文分词软件包。

安装 friso 分词组件

# wget https://friso.googlecode.com/files/friso-1.6.0-src-lib-dict.zip
# unzip friso-1.6.0-src-lib-dict.zip -d /usr/local/src/
# cd /usr/local/src/friso-1.6.0/src
# make && make install

Robbe 源码中的 README.txt 文件, 告诉我们:将friso里面的dict和friso.ini拷贝到一个好点的目录吧, 那我们就拷贝到好点的目录吧。

# cp /usr/local/src/friso-1.6.0/friso.ini /etc/

配置词典目录

编辑 /etc/friso.inifriso.lex_dir 指向我们的分词目录:

friso.lex_dir = /usr/local/src/friso-1.6.0/dict/UTF-8/

注意其他用户使用 friso 时,对 /usr/local/src/friso-1.6.0/dict/ 词典目录的访问权限。

从 1.6.0 版本后添加了 GBK 编码支持,新添了 GBK 和 UTF-8 两个目录,friso.lex_dir 的目录配置为 /usr/local/src/friso-1.6.0/dict/UTF-8/ 或 /usr/local/src/friso-1.6.0/dict/GBK/,如果是 GBK friso.charset 选项设置为 1 。

1.6.0 版本之前,请设置 friso.lex_dir 目录地址为 /usr/local/src/friso-x.x.x/dict/.

首次运行:

# /usr/local/bin/friso -init /etc/friso.ini
./friso: error while loading shared libraries: libfriso.so: cannot open shared object file: No such file or directory

解决:

# cp libfriso.so /usr/lib64/

再次运行:

# /usr/local/bin/friso -init /etc/friso.ini
Initialized in 0.150000sec
+-Version: 1.6.0 (UTF-8)
+-----------------------------------------------------------+
| friso - a chinese word segmentation writen by c.          |
| bug report email - chenxin619315@gmail.com.               |
| or: visit http://code.google.com/p/friso.                 |
|     java edition for http://code.google.com/p/jcseg       |
| type 'quit' to exit the program.                          |
+-----------------------------------------------------------+
friso>> 我是中国人
分词结果:
  中国人 
Done, cost < 0.000000sec
friso>> 走路去拉萨
分词结果:
走路  拉萨 
Done, cost < 0.000000sec
friso>> quit
Thanks for trying friso.

friso 安装并配置完毕。

安装 Robbe PHP 扩展

# wget https://robbe.googlecode.com/files/robbe-1.6.0-src-lib-dict.zip
# unzip robbe-1.6.0-src-lib-dict.zip -d /usr/local/src/
# cd /usr/local/src/robbe-1.6.0/src/
# phpize
# ./configure

到此步需要注意:无论是64位系统还是32位系统(lionsoul 注)均需编辑 Makefile 文件,分别将 robbe.lo: 和 robbe.la: 两处的 -o 参数前 添加 -lfriso,最后为 -lfriso -o。 详情请查看:http://www.oschina.net/question/853816_119031

# make && make install

配置 PHP 添加 Robbe 扩展,编辑 php.ini 添加以下内容:

extension=robbe.so
[robbe]
robbe.ini_file=/etc/friso.ini

重新加载 php-fpm,或重启 apache:

# service php-fpm reload
OR
# service httpd restart

验证 PHP 是否已加载 Robbe 扩展:

# php -m | grep robbe
robbe

或查看 phpinfo,如图:

PHP Robbe 中文分词扩展

使用

首先我们创建一个 robbe.php 测试文件,使用 robbe 的简易分词模式进行测试,内容为:

<?php
$str = 'PHP 安装 Robbe 中文分词扩展';

$participle = array();
if (defined('RB_CMODE')) { // robbe 版本 = 1.6
    $_cfg = array('mode' => RB_CMODE);
    $splitKeywords = rb_split($str, $_cfg);
    foreach($splitKeywords as $keyword) {
        $participle[] = $keyword['word'];
    }
} else if (defined('__RB_SIMPLE_MODE__')) { // robbe 版本 < 1.6
    $participle = rb_split($str, __RB_SIMPLE_MODE__);
}

var_dump($participle);

浏览器访问 http://localhost/robbe.php,输出

array (size=5)
  0 => string 'php' (length=3)
  1 => string '安装' (length=6)
  2 => string 'robbe' (length=5)
  3 => string '中文分词' (length=12)
  4 => string '扩展' (length=6)

更多 robbe 的分词模式及使用方法请查看源码中 php 文件夹 下的文件。

从结果可以看出 friso 好像不区分大小写。(为了检索方便, friso统一将大写转换成了小写, 统一将圆角转换成了半角... lionsoul 注)

如果你使用的 sphinx/coreseek,请查看 配置官方版 Sphinx 一元分词,支持中文 或 Linux 下配置 Sphinx(coreseek) 中文分词

Good Luck!

转载请注明出处。
本文地址:http://blog.aboutc.net/php/59/php-installation-robbe-chinese-word-extension
Starred by 16 users
Members
chenxin6...@gmail.comchenxin1...@gmail.com
Featured
Downloads
Wiki pages
Links

最新动态: robbe-1.6.0发布了

robbe开源中国git托管

一。robbe php开源高性能中文分词扩展

robbe是建立在friso中文分词上的一个高性能php中文分词扩展。了解friso

1.目前最高版本:friso 1.6.0。

2.mmseg四种过滤算法,分词准确率达到了98.41%。

3.详细功能,请访问friso官方首页:friso

二。分词速度

测试环境:2.8GHZ/2G/Ubuntu

简单模式:3.1M/秒

复杂模式:1.4M/秒

(因为php中的大量字符串的复制,性能比friso有点下降)。

三。使用方法

Linux如何自主编译安装robbe?

Win下如何自己编译安装robbe?

robbe安装ueaner博客

1。下载:

(1).在friso下载下载最新的friso附件。

(2).在robbe下载下载最新的robbe附件。

2.安装:

(1). winNT系统: 复制friso-{version}/lib/win32/下的friso.dll和robbe-{version}/lib/win32/下的php_robbe.dll到php的ext扩展目录下。

(2). linux系统: 同上(或者自己make去安装,先安装friso,在安装robbe)。

(3). php.ini配置:

//1.加入扩展:

extension=php_robbe.dll   //win
extension=php_robbe.so    //linux

//2.加入robbe php配置:

[robbe]
;configuration file for robbe.
robbe.ini_file = friso.ini文件的绝对地址。

3。php测试:

(1).运行phpinfo.php

看到:如下的配置信息表示配置成功了:

             robbe

Robbe Support	enabled
Version	        1.1
Bug Report	chenxin619315@gmail.com
Learn More	http://code.google.com/p/robbe
C Edition	http://code.google.com/p/friso
Java Edition	http://code.google.com/p/jcseg

Directive	Local Value	Master Value
robbe.ini_file	friso.ini地址	friso.ini地址

(2).运行robbe_php下的两个php文件,你懂得。

robbe函数集合和使用实例

中文分词插件SCWS-1.2.3 在Linux环境的安装说明(包括php扩展)

以 Linux(FreeBSD) 操作系统为例 1. 取得 scws-1.2.3 的代码 wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar...

中文分词 及发展现状(总结的不错)

中文分词 (Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词...

一步一步跟我学习lucene(4)---lucene的中文分词器jcseg和IK Analyzer分词器及其使用说明

为什么要使用lucene中文分词器 在lucene的开发过程中,我们常会遇到分词时中文识别的问题,lucene提供了  lucene-analyzers-common-5.0.0.jar包来支持分...

php 中文分词程序

  • 2009年06月24日 12:12
  • 3.52MB
  • 下载

【中文分词-全文搜索】Ubuntu 16.04 Mysql和PHP 配置 Sphinx-for-chinese 及Sphinx的排序筛选分页基本操作

记录在此,作为分享,也作为自己的存档。 git clone https://github.com/eric1688/sphinx cd sphinx ./configure --prefi...

php中文分词案例

  • 2013年08月31日 19:55
  • 663KB
  • 下载

php+中文分词scws+sphinx+mysql打造千万级数据全文搜索

转载:http://blog.csdn.net/nuli888/article/details/51892776 Sphinx是由俄罗斯人Andrew Aksyonoff开发的一个全文检索引...

PHP简单实现中文分词全文索引实例(tag专题)

相信很多人都研究过MYSQL的中文全文分词索引问题,目前MYSQL不支持中文全文索引,无奈~~~ 网上找了N多关于PHP+MYSQL中文全文索引的文章都没有一个好用的,对于一般的菜鸟根本不知道怎么使...

SCWS 中文分词 php

  • 2017年04月03日 10:21
  • 12.19MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP 安装 Robbe 中文分词扩展
举报原因:
原因补充:

(最多只允许输入30个字)