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中使用sockets:从新闻组中获取文章
Oct 09 PHP
五个PHP程序员工具
May 26 PHP
JS中encodeURIComponent函数用php解码的代码
Mar 01 PHP
PH P5.2至5.5、5.6的新增功能详解
Jul 14 PHP
php中使用url传递数组的方法
Feb 11 PHP
迪菲-赫尔曼密钥交换(Diffie?Hellman)算法原理和PHP实现版
May 12 PHP
Yii使用Captcha验证码的方法
Dec 28 PHP
PHP简单字符串过滤方法示例
Sep 04 PHP
php中序列化与反序列化详解
Feb 13 PHP
PHP实现的分页类定义与用法示例
Jul 05 PHP
laravel 框架结合关联查询 when()用法分析
Nov 22 PHP
PHP http请求超时问题解决方案
Nov 13 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
PHP乱码问题,UTF-8乱码常见问题小结
2012/04/09 PHP
ThinkPHP实现ajax仿官网搜索功能实例
2014/12/02 PHP
深入解析PHP中foreach语句控制数组循环的用法
2015/11/30 PHP
获取网站跟路径的javascript代码(站点及虚拟目录)
2009/10/20 Javascript
Javascript 中的 call 和 apply使用介绍
2012/02/22 Javascript
javascript利用控件对windows的操作实现原理与应用
2012/12/23 Javascript
javasript实现密码的隐藏与显示
2015/05/08 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
Bootstrap表单布局样式源代码
2016/07/04 Javascript
如何使用jquery实现文字上下滚动效果
2016/10/12 Javascript
AngularJS $http模块POST请求实现
2017/04/08 Javascript
JavaScript通过filereader接口读取文件
2017/05/10 Javascript
分析JS中this引发的bug
2017/12/12 Javascript
Vue中使用vue-i18插件实现多语言切换功能
2018/04/25 Javascript
vue-router实现嵌套路由的讲解
2019/01/19 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
JQuery常用选择器功能与用法实例分析
2019/12/23 jQuery
微信小程序图片自适应实现解析
2020/01/21 Javascript
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
Python采用raw_input读取输入值的方法
2014/08/18 Python
Python的净值数据接口调用示例分享
2016/03/15 Python
Python实现PS滤镜Fish lens图像扭曲效果示例
2018/01/29 Python
python3 破解 geetest(极验)的滑块验证码功能
2018/02/24 Python
简单了解python中的与或非运算
2019/09/18 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
C&A巴西网上商店:时尚、衣服、手机和鞋子
2020/06/07 全球购物
期末总结的个人自我评价
2013/11/02 职场文书
采购主管的岗位职责
2013/12/17 职场文书
工作决心书
2014/03/11 职场文书
中学生励志演讲稿
2014/04/26 职场文书
公司介绍信范文
2015/01/31 职场文书
军训心得体会范文(2016最新篇)
2016/01/11 职场文书
五年级作文之学校的四季
2019/12/05 职场文书
Go语言带缓冲的通道实现
2021/04/26 Golang
无线电通信名词解释
2022/02/18 无线电
pandas进行数据输入和输出的方法详解
2022/03/23 Python