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


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批量上传的实现代码
Jun 09 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
Jun 20 PHP
php实现从上传文件创建缩略图的方法
Apr 02 PHP
PHP随机生成唯一HASH值自定义函数
Apr 20 PHP
smarty自定义函数用法示例
May 20 PHP
php基于mcrypt_encrypt和mcrypt_decrypt实现字符串加密解密的方法
Jul 12 PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
Feb 04 PHP
php实现PDO中捕获SQL语句错误的方法
Feb 16 PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
Mar 14 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
Jun 11 PHP
PHP中关于php.ini参数优化详解
Feb 28 PHP
详解PHP设计模式之依赖注入模式
May 25 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 什么是PEAR?
2009/03/19 PHP
解析PHP生成静态html文件的三种方法
2013/06/18 PHP
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
thinkPHP商城公告功能开发问题分析
2016/12/01 PHP
PHP下用Swoole实现Actor并发模型的方法
2019/06/12 PHP
Javascript 类型转换方法
2010/10/24 Javascript
解析jQuery与其它js(Prototype)库兼容共存
2013/07/04 Javascript
JavaScript使用focus()设置焦点失败的解决方法
2014/09/03 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
jQuery实现订单提交页发送短信功能前端处理方法
2016/07/04 Javascript
完全深入学习Bootstrap表单
2016/11/28 Javascript
原生JS实现的双色球功能示例
2018/02/02 Javascript
vue动态删除从数据库倒入列表的某一条方法
2018/09/29 Javascript
详解vue中localStorage的使用方法
2018/11/22 Javascript
vue+Element-ui实现分页效果实例代码详解
2018/12/10 Javascript
如何实现双向绑定mvvm的原理实现
2019/05/28 Javascript
JavaScript实现京东放大镜效果
2019/12/03 Javascript
vue如何使用外部特殊字体的操作
2020/07/30 Javascript
用Python将IP地址在整型和字符串之间轻松转换
2017/03/22 Python
python机器学习之决策树分类详解
2017/12/20 Python
python正则表达式面试题解答
2020/04/28 Python
python实现贪吃蛇游戏
2020/03/21 Python
python实现中文文本分句的例子
2019/07/15 Python
Python中生成一个指定长度的随机字符串实现示例
2019/11/06 Python
解决Pyinstaller打包软件失败的一个坑
2021/03/04 Python
美国女性服饰销售网站:Nasty Gal(坏女孩)
2016/07/26 全球购物
大学生就业自荐信
2013/10/26 职场文书
竞聘上岗演讲稿范文
2014/01/10 职场文书
工厂实习感言
2014/01/14 职场文书
十八大感想感言
2014/02/10 职场文书
安全环保标语
2014/06/09 职场文书
工人先锋号事迹材料
2014/12/24 职场文书
团支部组织委员竞选稿
2015/11/21 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
MySQL分库分表与分区的入门指南
2021/04/22 MySQL
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python