PHP中文分词 自动获取关键词介绍


Posted in PHP onNovember 13, 2012
<?php 
header("Content-Type:text/html; charset=utf-8"); 
define('APP_ROOT', str_replace('\\', '/', dirname(__FILE__))); 
$test = '这里是一段中文测试代码!'; 
function get_tags_arr($title) 
{ 
require(APP_ROOT.'/pscws4.class.php'); 
$pscws = new PSCWS4(); 
$pscws->set_dict(APP_ROOT.'/scws/dict.utf8.xdb'); 
$pscws->set_rule(APP_ROOT.'/scws/rules.utf8.ini'); 
$pscws->set_ignore(true); 
$pscws->send_text($title); 
$words = $pscws->get_tops(5); 
$tags = array(); 
foreach ($words as $val) { 
$tags[] = $val['word']; 
} 
$pscws->close(); 
return $tags; 
} 
print_r(get_tags_arr($test)); 
//============================================================ 
function get_keywords_str($content){ 
require(APP_ROOT.'/phpanalysis.class.php'); 
PhpAnalysis::$loadInit = false; 
$pa = new PhpAnalysis('utf-8', 'utf-8', false); 
$pa->LoadDict(); 
$pa->SetSource($content); 
$pa->StartAnalysis( false ); 
$tags = $pa->GetFinallyResult(); 
return $tags; 
} 
print(get_keywords_str($test));

相关下载地址

SCWS ? 简易中文分词系统

SCWS 在概念上并无创新成分,采用的是自行采集的词频词典,并辅以一定程度上的专有名称、人名、地名、数字年代等规则集,经小范围测试大概准确率在 90% ~ 95% 之间,已能基本满足一些中小型搜索引擎、关键字提取等场合运用。 SCWS 采用纯 C 代码开发,以 Unix-Like OS 为主要平台环境,提供共享函数库,方便植入各种现有软件系统。此外它支持 GBK,UTF-8,BIG5 等汉字编码,切词效率高。

系统平台:Windows/Unix
开发语言:C
使用方式:PHP扩展

演示网址:http://www.ftphp.com/scws/demo.php
开源官网:http://www.ftphp.com/scws/

晴枫附注:作为PHP扩展,容易与现有的基于PHP架构的Web系统继续集成,是其一大优势。

PhpanAlysis - PHP无组件分词系统

PhpanAlysis分词系统是基于字符串匹配的分词方法 ,这种方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个“充分大的”机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。按照扫描方向的不同,串匹配分词方法可以分为正向匹配 和逆向匹配;按照不同长度优先匹配的情况,可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。 

系统平台:PHP环境

开发语言:PHP

使用方式:HTTP服务

演示网址:http://www.itgrass.com/phpanalysis/
开源官网:http://www.itgrass.com/phpanalysis/

晴枫附注:实现简单,容易使用,能做一些简单应用,但大数据量的计算效率不如前几种。

试用了几个系统,基本分词功能都没什么问题,只是在个别一些词的划分上存在一些差异;对于词性的确定,系统间有所不同。

https://3water.com/codes/40139.html

PHP 相关文章推荐
Zend framework处理一个http请求的流程分析
Feb 08 PHP
php错误提示failed to open stream: HTTP request failed!的完美解决方法
Jun 06 PHP
PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据
Apr 09 PHP
php中过滤非法字符的具体实现
Oct 29 PHP
php中mail函数发送邮件失败的解决方法
Dec 24 PHP
php面向对象中static静态属性与方法的内存位置分析
Feb 08 PHP
PHP ajax 异步执行不等待执行结果的处理方法
May 27 PHP
PHP编辑器PhpStrom运行缓慢问题
Feb 21 PHP
PHP对象相关知识总结
Apr 09 PHP
PHP实现的多维数组排序算法分析
Feb 10 PHP
使用vs code编辑调试php配置的方法
Jan 29 PHP
PHP CURL使用详解
Mar 21 PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 #PHP
PHP漏洞全解(详细介绍)
Nov 13 #PHP
thinkphp3.0 模板中函数的使用
Nov 13 #PHP
thinkPHP的Html模板标签使用方法
Nov 13 #PHP
PHP数组及条件,循环语句学习
Nov 11 #PHP
php对mongodb的扩展(初出茅庐)
Nov 11 #PHP
PHP面向对象——访问修饰符介绍
Nov 08 #PHP
You might like
超级简单的发送邮件程序
2006/10/09 PHP
php下目前为目最全的CURL中文说明
2010/08/01 PHP
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
Codeigniter注册登录代码示例
2014/06/12 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
PHP下载远程图片并保存到本地方法总结
2016/01/22 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
2017/02/08 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
BOOM vs RR BO5 第三场 2.14
2021/03/10 DOTA
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
iframe窗口高度自适应的实现方法
2014/01/08 Javascript
基于jQuery实现的查看全文功能【实用】
2016/12/11 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
2017/06/13 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
关于redux-saga中take使用方法详解
2018/02/27 Javascript
Vue 配合eiement动态路由,权限验证的方法
2018/09/26 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
[03:02]辉夜杯主赛事第二日 每日之星
2015/12/27 DOTA
Python实现的二维码生成小软件
2014/07/11 Python
Python如何快速实现分布式任务
2017/07/06 Python
Python3 循环语句(for、while、break、range等)
2017/11/20 Python
Python正则表达式匹配和提取IP地址
2019/06/06 Python
python算法与数据结构之冒泡排序实例详解
2019/06/22 Python
基于Python实现签到脚本过程解析
2019/10/25 Python
python实现翻译word表格小程序
2020/02/27 Python
解决python图像处理图像赋值后变为白色的问题
2020/06/04 Python
Python如何读写CSV文件
2020/08/13 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
2020/12/07 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
汽车销售员如何做职业生涯规划
2014/02/16 职场文书
理财学专业自荐书
2014/06/28 职场文书
地球一小时活动总结
2015/02/27 职场文书
环保宣传语大全
2015/07/13 职场文书
WebRTC记录音视频流(web技术分享)
2022/02/24 Javascript