php 计算字符串相邻最大重复数_php如何解决字符串中重复字符的次数并且排序输出的方法...
在php開發中有這樣的需求。在指定的字符串中提取出每個單位字符出現的次數,并且倒序排序,截取前4個。留作使用。剛拿到這個需求的時候,我想了想,難道要把每個字符全部切割出來之后,一一的比對計算出相應的出現次數嗎?我的直覺告訴,這樣不好。其實php中用相應的函數array_count_values()可以直接的計算出每個數組值出現的次數。倒序可以使用arsort(),切割數組也有函數array_slice()。所以說,方法我們已經知道了,那么看我們怎么帶到實際的運用吧。
字符串:
簡約,簡約,金屬,皮革,后現代,直角,現代,豪華,布藝,金屬,直角,現代,
需求:
在指定的字符串中判斷出單位字符出現的次數,并且取出出現次數最多的幾個。
php代碼:
$str?=?'簡約,簡約,金屬,皮革,后現代,直角,現代,豪華,布藝,金屬,直角,現代,';
$tag_str?=?rtrim($str,',');
$tag_arr?=?explode(',',$tag_str);
//?統計出現的次數
$tag_arr?=?array_count_values($tag_arr);
echo?'
';print_r($tag_arr);
//?排序
echo?'
';
arsort($tag_arr);
echo?'
';print_r($tag_arr);
//?去除前4個值
echo?'
';
$tag_arr?=?array_slice($tag_arr,0,4,true);
echo?'
';print_r($tag_arr);
//?組成字符串
echo?'
';
$str?=?'';
foreach($tag_arr?as?$k=>$v){
$str?.=?$k.',';
}
echo?$str;
?>
輸出代碼:Array
(
[簡約]?=>?2
[金屬]?=>?2
[皮革]?=>?1
[后現代]?=>?1
[直角]?=>?2
[現代]?=>?2
[豪華]?=>?1
[布藝]?=>?1
)
Array
(
[簡約]?=>?2
[現代]?=>?2
[金屬]?=>?2
[直角]?=>?2
[布藝]?=>?1
[豪華]?=>?1
[后現代]?=>?1
[皮革]?=>?1
)
Array
(
[簡約]?=>?2
[現代]?=>?2
[金屬]?=>?2
[直角]?=>?2
)
簡約,現代,金屬,直角,
通過輸出php代碼,我們很清晰的看到如何用php解決字符串中重復字符的次數并且排序輸出的問題。
總結
以上是生活随笔為你收集整理的php 计算字符串相邻最大重复数_php如何解决字符串中重复字符的次数并且排序输出的方法...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kubenerte启动_Kubenert
- 下一篇: mysql variables_通过什么