如何取得中文字符串中出现次数最多的子串


Posted in PHP onAugust 08, 2013

直接上代码,子串的长度可自己设置(比如连续4个字符的或5个字符的)。

$str ='我是中国人我是外国人我是韩国人我是美国人我是中国人我是英国人我是中国人我是外国人';
Count_string($str,5);
function Count_string($sstr,$length)
{
 $cnt_tmp = 0;
 $cnt = 0;
 $str = '';
 $str_tmp = array();
 $str_arr = array();
 mb_internal_encoding("gb2312");
 $max_length = (mb_strlen($sstr)-$length); //取得子串集
 for($i=0;$i<=$max_length;$i++)
 {
  $str_tmp[] =  mb_substr($sstr, $i, $length);
 }
 //去除重复子串 
 $str_tmp = array_unique($str_tmp);
 //计算出现次数
 foreach($str_tmp as $key=>$value)
 {
  $cnt_tmp = mb_substr_count($sstr,$value);
  if($cnt_tmp>=$cnt) 
  {
   $cnt = $cnt_tmp;
   $str_arr[$value] = $cnt;   
  }
 }
 //处理出现多重结果
 foreach($str_arr as $key=>$value)
 {
  if($value == $cnt)
  {$str .=$key."<br>";}
 }

 echo '出现最多的子串是:<br>'.$str.'<br>出现次数:'.$cnt;
}
PHP 相关文章推荐
网站加速 PHP 缓冲的免费实现方法
Oct 09 PHP
介绍php设计模式中的工厂模式
Jun 12 PHP
php读取javascript设置的cookies的代码
Apr 12 PHP
php命令行使用方法和命令行参数说明
Apr 08 PHP
php程序员应具有的7种能力小结
Nov 27 PHP
PHP实现简单搜歌的方法
Jul 28 PHP
PHP实现删除字符串中任何字符的函数
Aug 11 PHP
Yii2实现UploadedFile上传文件示例
Feb 15 PHP
[原创]php正则删除img标签的方法示例
May 27 PHP
PHP实现分布式memcache设置web集群session同步的方法
Apr 10 PHP
laravel 如何实现引入自己的函数或类库
Oct 15 PHP
php实现的简单多进程服务器类完整示例
Feb 01 PHP
php读取图片内容并输出到浏览器的实现代码
Aug 08 #PHP
php调用Google translate_tts api实现代码
Aug 07 #PHP
利用php+mcDropdown实现文件路径可在下拉框选择
Aug 07 #PHP
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
Aug 07 #PHP
对于PHP 5.4 你必须要知道的
Aug 07 #PHP
php缓存技术详细总结
Aug 07 #PHP
IIS6.0中配置php服务全过程解析
Aug 07 #PHP
You might like
PHP中类的继承和用法实例分析
2016/05/24 PHP
CI框架表单验证实例详解
2016/11/21 PHP
php微信公众平台交互与接口详解
2016/11/28 PHP
safari下载文件自动加了html后缀问题
2018/11/09 PHP
php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
2019/05/09 PHP
JS 树形递归实例代码
2010/05/18 Javascript
根据出生日期自动取得星座的js代码
2010/07/20 Javascript
js 限制数字 js限制输入实现代码
2012/12/04 Javascript
js iframe跨域访问(同主域/非同主域)分别深入介绍
2013/01/24 Javascript
使用js判断当前时区TimeZone是否是夏令时
2014/02/23 Javascript
js判断横竖屏及禁止浏览器滑动条示例
2014/04/29 Javascript
js中实现多态采用和继承类似的方法
2014/08/22 Javascript
使用 js+正则表达式为关键词添加链接
2014/11/11 Javascript
利用原生js和jQuery实现单选框的勾选和取消操作的方法
2016/09/04 Javascript
vue的基本用法与常见指令
2017/08/15 Javascript
vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作
2020/07/27 Javascript
Js跳出两级循环方法代码实例
2020/09/22 Javascript
python使用urllib模块和pyquery实现阿里巴巴排名查询
2014/01/16 Python
一个基于flask的web应用诞生 记录用户账户登录状态(6)
2017/04/11 Python
Python安装官方whl包和tar.gz包的方法(推荐)
2017/06/04 Python
python xpath获取页面注释的方法
2019/01/14 Python
python读取指定字节长度的文本方法
2019/08/27 Python
python基于celery实现异步任务周期任务定时任务
2019/12/30 Python
英国美发和美容产品商城:HQhair
2019/02/08 全球购物
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
2012/06/27 面试题
销售高级职员求职信
2013/10/29 职场文书
测量工程专业求职信
2014/02/24 职场文书
珠宝店促销方案
2014/03/21 职场文书
基层党组织建设整改方案
2014/09/16 职场文书
党支部班子“四风”问题自我剖析材料
2014/09/28 职场文书
担保书范文
2019/07/09 职场文书
创业计划书之餐饮
2019/09/02 职场文书
创业计划书之校园跑腿公司
2019/09/24 职场文书
解决Maven项目中 Invalid bound statement 无效的绑定问题
2021/06/15 Java/Android
Python字符串常规操作小结
2022/04/03 Python
速龙x4-860k处理器相当于i几
2022/04/20 数码科技