php中3种方法统计字符串中每种字符的个数并排序


Posted in PHP onAugust 27, 2012
<?php 
//这个方法纯粹是背函数,不解释; 
function countStr($str){ 
$str_array=str_split($str); 
$str_array=array_count_values($str_array); 
arsort($str_array); 
return $str_array; 
} 
//以下是例子; 
$str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas"; 
print_r(countStr($str)); 
?> 
<? 
//这个方法有些数据结构的思想,不过还是很好理解的:) 
function countStr2($str){ 
$str_array=str_split($str); 
$result_array=array(); 
foreach($str_array as $value){//判断该字符是否是新出现的种类,是的话就设置为1,不是的话就自加; 
if(!$result_array[$value]){ 
$result_array[$value]=1; 
}else{ 
$result_array[$value]++; 
} 
} 
arsort($result_array); 
return $result_array; 
} 
$str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas"; 
var_dump(countStr2($str)) 
?> 
<?php 
//这个方法纯粹是解法一的蹩脚版本,先找出所有字符的总类,然后在一个一个用substr_count函数统计。 
function countStr3($str){ 
$str_array=str_split($str); 
$unique=array_unique($str_array); 
foreach ($unique as $v){ 
$result_array[$v]=substr_count($str,$v); 
} 
arsort($result_array); 
return $result_array; 
} 
$str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas"; 
var_dump(countStr3($str)); 
?>

*无论是用哪一个方法,都要用到str_split函数,所以说,这个函数很重要哦~
PHP 相关文章推荐
PHP日期处理函数 整型日期格式
Jan 12 PHP
PHP常用开发函数解析之数组篇[未完结]
Jul 30 PHP
php使用imagick模块实现图片缩放、裁剪、压缩示例
Apr 17 PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
Oct 20 PHP
详解php比较操作符的安全问题
Dec 03 PHP
php从身份证获取性别和出生年月
Feb 09 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
Aug 15 PHP
php微信公众号开发之快递查询
Oct 20 PHP
微信公众平台开发教程②微信端分享功能图文详解
Apr 10 PHP
CentOS7编译安装php7.1的教程详解
Apr 18 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
Apr 23 PHP
关于PHP求解三数之和问题详析
Nov 09 PHP
简单的方法让你的后台登录更加安全(php中加session验证)
Aug 22 #PHP
PHP写的获取各搜索蜘蛛爬行记录代码
Aug 21 #PHP
php基础教程 php内置函数实例教程
Aug 21 #PHP
php+ajax做仿百度搜索下拉自动提示框(有实例)
Aug 21 #PHP
php计算十二星座的函数代码
Aug 21 #PHP
表格展示无限级分类(PHP版)
Aug 21 #PHP
gd库图片下载类实现下载网页所有图片的php代码
Aug 20 #PHP
You might like
咖啡的种类和口感
2021/03/03 新手入门
解析php框架codeigniter中如何使用框架的session
2013/06/24 PHP
php设置session值和cookies的学习示例
2014/03/21 PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
2014/07/28 PHP
thinkphp框架实现路由重定义简化url访问地址的方法分析
2020/04/04 PHP
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
面向对象的Javascript之一(初识Javascript)
2012/01/20 Javascript
JS简单实现动画弹出层效果
2015/05/05 Javascript
js实现兼容IE、Firefox的图片缩放代码
2015/12/08 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
关于JS 预解释的相关理解
2016/06/28 Javascript
JS实现的表格行上下移动操作示例
2016/08/03 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
浅谈Angular.js中使用$watch监听模型变化
2017/01/10 Javascript
Angular中使用$watch监听object属性值的变化(详解)
2017/04/24 Javascript
详解Vue组件之间的数据通信实例
2017/06/17 Javascript
JS实现的简单表单验证功能完整实例
2017/10/14 Javascript
从源码看angular/material2 中 dialog模块的实现方法
2017/10/18 Javascript
JavaScript满天星导航栏实现方法
2018/03/08 Javascript
Angularjs 根据一个select的值去设置另一个select的值方法
2018/08/13 Javascript
微信小程序开发之路由切换页面重定向问题
2018/09/18 Javascript
详解Vue-cli3 项目在安卓低版本系统和IE上白屏问题解决
2019/04/14 Javascript
JavaScript实现美化滑块效果
2019/05/17 Javascript
浅谈element中InfiniteScroll按需引入的一点注意事项
2020/06/05 Javascript
python自然语言编码转换模块codecs介绍
2015/04/08 Python
python解决汉字编码问题:Unicode Decode Error
2017/01/19 Python
计算机二级python学习教程(2) python语言基本语法元素
2019/05/16 Python
详解python和matlab的优势与区别
2019/06/28 Python
基于pytorch的保存和加载模型参数的方法
2019/08/17 Python
Tensorflow tf.tile()的用法实例分析
2020/05/22 Python
python 下载文件的几种方法汇总
2021/01/06 Python
Speedo速比涛法国官方网站:泳衣、泳镜、泳帽、泳裤
2019/07/30 全球购物
综治维稳工作承诺书
2014/08/30 职场文书
2014年群众路线教育实践活动整改措施
2014/09/24 职场文书
名人传读书笔记
2015/06/26 职场文书
优秀学生主要事迹怎么写
2015/11/04 职场文书