php自动获取关键字的方法


Posted in PHP onJanuary 06, 2015

本文实例讲述了php自动获取关键字的方法。分享给大家供大家参考。

具体实现方法如下:

$mincipin=5;//最小词频 

$minlen=4;//关键字最小长度 

tiqukeyword($tiqustr,$minlen,$mincipin); 

function tiqukeyword($tiqustr,$minlen,$mincipin) 

{$strlong=strlen($tiqustr); 

$arr=array(); 

$k=-1; 

for($i=0;$i<($strlong-$mincipin*$minlen);$i++){ 

$end=ceil(($strlong-$i)/$mincipin+$i); 

for($j=$minlen;$j<$end;$j++){$num=0; 

if(($guanjianzi=substr($tiqustr,$i,$j))!==false){ 

$wz=$i+$j; 

$num++;} 

else{break;} 

while($wz<$strlong){if(($wz=strpos($tiqustr,$guanjianzi,$wz))!==false) 

{$num++; 

$wz=$wz+strlen($guanjianzi);} 

else break; 

} 

if($j==$minlen){ 

if($num>=$mincipin){$maxnum=$num;$k++;$str=substr($tiqustr,$i,$j); 

$arr[$k]=array($i,$j,$str,$num,0); 

} 

else{break;} 

} 

else{ 

if($num>=$maxnum){ 

$maxnum=$num; 

$str=substr($tiqustr,$i,$j); 

$arr[$k]=array($i,$j,$str,$num,0); 

} 

else break; 

} 

} 

} 

echo '初步得到的数组:'; 

print_r($arr); 

//echo '<br/><br/><br/><br/>'; 

  

$arrlong=count($arr); 

for($i=0;$i<$arrlong;$i++){ 

$bjarr=$arr[$i]; 

$nowid=$i; 

if($bjarr[4]==1)continue; 

for($j=$i+1;$j<$arrlong;$j++){ 

if($arr[$j][4]==1)continue; 

$qujianks=$bjarr[0]; 

$qujianjs=$bjarr[1]+$bjarr[0]-1; 

$a=$arr[$j][0]; 

$b=$arr[$j][1]+$arr[$j][0]-1; 

if(($bjarr[2]==$arr[$j][2])&&($bjarr[3]>$arr[$j][3]))$arr[$j][4]=1; 

  

if($a<=$qujianks&&$qujianks<=$b&&$a<=$qujianjs&&$qujianjs<=$b) 

{if($bjarr[3]<=$arr[$j][3]){ 

$arr[$nowid][4]=1;$nowid=$j;$bjarr=$arr[$j]; 

} 

} 

elseif($qujianks<=$a&&$a<=$qujianjs&&$qujianks<=$b&&$b<=$qujianjs){ 

$arr[$j][4]=1; 

} 

} 

} 

  

echo '<br/><br/><br/><br/>重叠加标记后的数组:'; 

print_r($arr); 

$jieguoarr=array(); 

for($i=0;$i<$arrlong;$i++) 

{if($arr[$i][4]==0)$jieguoarr[]=$arr[$i]; 

  

} 

echo '<br/><br/><br/><br/>'; 

echo '最后得到的数组:'; 

print_r($jieguoarr); 

}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
如何在PHP中使用Oracle数据库(2)
Oct 09 PHP
php escape URL编码
Dec 10 PHP
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
Jul 17 PHP
解决ajax+php中文乱码的方法详解
Jun 09 PHP
jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码
Oct 15 PHP
PHP将HTML转换成文本的实现代码
Jan 21 PHP
PHP实现获取某个月份周次信息的方法
Aug 11 PHP
PHP中的正则表达式实例详解
Apr 25 PHP
详解PHP处理字符串类似indexof的方法函数
Jun 11 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
php 数据结构之链表队列
Oct 17 PHP
Laravel框架中缓存的使用方法分析
Sep 06 PHP
windows7下php开发环境搭建图文教程
Jan 06 #PHP
PHP中$this和$that指针使用实例
Jan 06 #PHP
php缓冲输出实例分析
Jan 05 #PHP
php中fsockopen用法实例
Jan 05 #PHP
php中Socket创建与监听实现方法
Jan 05 #PHP
php实现计数器方法小结
Jan 05 #PHP
php下Memcached入门实例解析
Jan 05 #PHP
You might like
php继承的一个应用
2011/09/06 PHP
PHP支持多种格式图片上传(支持jpg、png、gif)
2011/11/03 PHP
php中的常用魔术方法总结
2013/08/02 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
javascript 学习笔记(六)浏览器类型及版本信息检测代码
2011/04/08 Javascript
JS父页面与子页面相互传值方法
2014/03/05 Javascript
删除条目时弹出的确认对话框
2014/06/05 Javascript
JavaScript设计模式之工厂方法模式介绍
2014/12/28 Javascript
jQuery知识点整理
2015/01/30 Javascript
JQuery中DOM事件合成用法实例分析
2015/06/13 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
ES6教程之for循环和Map,Set用法分析
2017/04/10 Javascript
详解Vue 非父子组件通信方法(非Vuex)
2017/05/24 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
koa2使用ejs和nunjucks作为模板引擎的使用
2018/11/27 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
小程序表单认证布局及验证详解
2020/06/19 Javascript
vue项目页面嵌入代码块vue-prism-editor的实现
2020/10/30 Javascript
[59:30]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
Python实现网站文件的全备份和差异备份
2014/11/30 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
2016/10/09 Python
关于TensorFlow新旧版本函数接口变化详解
2020/02/10 Python
PyTorch的torch.cat用法
2020/06/28 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
2020/12/24 Python
Python实现王者荣耀自动刷金币的完整步骤
2021/01/22 Python
HTML5实现页面切换激活的PageVisibility API使用初探
2016/05/13 HTML / CSS
军神教学反思
2014/02/04 职场文书
知识竞赛主持词
2014/03/26 职场文书
园林技术专业求职信
2014/07/28 职场文书
大学生党员个人剖析材料
2014/10/08 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
2014年人民调解工作总结
2014/12/08 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
2019年亲子运动会口号
2019/10/11 职场文书
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers